Jquery отключает кнопку формы, пока не нажмете на элемент, не являющийся формой

#php #jquery #forms #click #submit

#php #jquery #формы #нажмите #Отправить

Вопрос:

у меня есть простой список, который не включен в форму, и форма.

Что я хочу сделать: я хочу, чтобы кнопка отправки формы включалась только тогда, когда кто-то нажимает на один элемент этого списка. Возможно ли это с помощью jquery?

Спасибо!

Ответ №1:

Вы можете сделать вот так HTML

 <ul id="list">
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
</ul>
<form>
    <input id="btnSubmit" type="submit" disabled="disabled" value="Submit"/>
</form>
  

Javascript

 $(document).ready(function() {
    $('#list > li').click(function() {
        $('#btnSubmit').removeAttr('disabled');
    });
});
  

ДЕМОНСТРАЦИЯ:
http://jsfiddle.net/ynhat/r6nUD /

Ответ №2:

это работает

 <script src="http://code.jquery.com/jquery-1.5.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
     $(document).ready(function() {

       $('#MyList').click(function() {
          $('#submitButton').removeAttr("disabled");
       });
    });
</script>

    <ul id="MyList">
     <li>element1</li>
     <li>element2</li>
    </ul>
    <input type="submit" id="submitButton" value="Submit" disabled="true">
  

Ответ №3:

Изначально отключите кнопку (например, путем добавления disabled="disabled" непосредственно в HTML) и определите соответствующее действие для события щелчка в вашем списке:

 $("#the_list").bind("click", function() {
    $("#submit_button").removeAttr("disabled");
});
  

Комментарии:

1. круто, но это пока не удаляет отключенный щелчок по элементу … хотя я добавил скрипт и соответствующие стили.

2. По-видимому, событие click' rather than изменения` подходит в этом случае. (Я отредактировал ответ, чтобы отразить это).

Ответ №4:

Попробуйте это. Здесь я использовал образец HTML.

HTML:

 <form id="myform">
    <input type="text" />
    <input type="submit" disabled="disabled" />
</form>
  

JQUERY — JQUERY — запрос:

 $('#list li').click(function(){
   $('#myform input:submit').attr('disabled',false);
});