如何填写表单之前禁用提交按钮

时间:2014-06-01 08:51:16

标签: javascript jquery html

我知道那里有很多答案,但由于某些原因它不适合我。

您可以在JSFiddle

上查看代码

脚本的位置有误吗?其中一个输入id?

问题:在填写文本字段后,该按钮仍然处于禁用状态。

HTML

<form class="form" name="contactform" method="post" action="https://lp.outit.co.il/LA-FACE/send_form_email.php">
    <input  placeholder="Your Name*"  type="text" name="name" maxlength="50">
    <input placeholder="Phone *"   type="text" name="telephone" maxlength="30">                    
    <input placeholder="Email *"   type="email" name="email" maxlength="80">
    <input class="send" id="register" type="submit" value="Send" disabled="disabled">

    <p>* = Requierd fields</p>

</form>

JQUERY ON HEAD

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<script>
(function() {
$('form > input').keyup(function() {

  var empty = false;
  $('form > input').each(function() {
  if ($(this).val() === '') {
  empty = true;
  }
  });

  if (empty) {
    $('#register').attr('disabled', 'disabled');
  } else {
    $('#register').removeAttr('disabled');
  }
  });
})();
</script>

3 个答案:

答案 0 :(得分:3)

我发布了工作小提琴,这是你想要的吗? http://jsfiddle.net/qqwcu/2/

请注意其首选使用:$('#register').prop("disabled", false); 请检查此Remove disabled attribute using JQuery?

 $(document).ready(function(){
$('form > input').keyup(function() {

var empty1 = false;
$('form > input').each(function() {
if ($(this).val() === '') {
 empty1 = true;
}
});

if (empty1) {
$('#register').attr('disabled', 'disabled');
} else {

     $('#register').prop("disabled", false);
}
});
});

答案 1 :(得分:1)

你的小提琴很好,但是,你没有在那里包含jQuery。这有没有解决问题?

答案 2 :(得分:0)

当DOM还没有准备好时,你的代码就会运行。

Sor用

包裹它
$(document).ready()