表单和Jquery代码不起作用。灰显提交按钮

时间:2013-01-31 14:29:01

标签: jquery forms button submit

我有一个HTML订阅表单,它使用(或应该使用)jquery代码来使SUBMIT按钮变灰,直到填写 name 字段。

然而,它不起作用......

有什么不对的线索?这是代码:

<head>
<script type="text/javascript">
var $submit = $("input[type=submit]");
if ( $(".subName").length > 0 ) {
   $submit.attr("disabled","disabled");
} else {
   $submit.removeAttr("disabled");
}
</script>
</head>
<body>
<form action="" method="post" id="subscribe" name="subscribe">
<input type="hidden" name="action" value="subscribe">
<label>NAME:</label>
<input type="text" name="name" class="subName" id="sub_first_name">
<label>EMAIL:</label>
<input type="text" name="email" class="subEmail" id="sub_email">
<input type="submit" name="button" value="Subscribe" />
</form>
</body>

谢谢!

--------------------------编辑

<form action="" method="post" id="subscribe" name="subscribe">
<label>NAME:</label>
<input type="text" name="name" class="subName" id="sub_first_name">
<label>EMAIL:</label>
<input type="text" name="email" class="subEmail" id="sub_email">
<input type="submit" name="button" value="Subscribe" />
</form>

JS:

<script type="text/javascript">
$(document).ready(function() {
    var $submit = $("input[type=submit]");
    $('.subName').on('change', function() {
        if ( ! $(".subName").val().length ) {
           $submit.attr("disabled","disabled");
        } else {
           $submit.removeAttr("disabled");
        }
    });
}
</script>

但仍然没有工作:(

2 个答案:

答案 0 :(得分:0)

$(document).ready(function() {
    var $submit = $("input[type=submit]");
    $('.subName').on('change keyup', function() {
        if ( !$(this).val().length ) {
           $submit.attr("disabled","disabled");
        } else {
           $submit.removeAttr("disabled");
        }
    });
});

答案 1 :(得分:0)

除了将它绑定到一个事件之外,你还在头文件中包含了jQuery吗?例如:

<script type="text/javascript" src="js/jquery-1.7.1.js"></script>