【发布时间】:2013-06-24 18:47:05
【问题描述】:
我有这段代码,我已经更改和调整了太多次,但如果表单按钮是type="submit",它就不起作用,我可以忍受,但有什么原因,有人可以告诉我为什么?如果我将类型更改为type="button",那么它可以工作。
$(document).ready(function () {
$('#btnSubmit').attr('disabled', true);
$('#myForm :input:not(#btnSubmit)').blur(function () {
if ($('#myField').val() == '') {
$('#btnSubmit').attr('disabled', true);
} else {
$('#btnSubmit').attr('disabled', false);
}
});
});
我有大约 25 本书,它们告诉你如何使用 Not 运算符,但现在哪里说表单按钮必须有一个类型按钮而不是提交类型才能工作。
只是想学习。
注意:上面的代码已经更改了很多次,我试图找出原因。
<form name="myForm" id="myForm" method="post" action="">
<label for="myField">Name</label>
<input type="text" name="myField" id="myField">
<input type="button" name="btnSubmit" id="btnSubmit" value="Submit">
</form>
更新:
*我遇到的问题是,当我单击按钮时,按钮再次被禁用:有人可以向我解释为什么会发生这种情况吗?在我输入一些值并离开该字段后,该按钮被启用,但是,一旦我单击它就会被禁用。
但是,如果我将输入类型更改为按钮,则单击时按钮不会被禁用。我不确定为什么会这样。这就是为什么我最初认为这是一个错误或某种支持问题。
只是好奇和知识的好处。*
【问题讨论】:
-
未经测试
'#myForm input:not(#btnSubmit)'或$('#myForm input).not('#btnSubmit') -
能否提供jsfiddle的链接
-
你用的是什么版本的jQuery?
-
请向我们展示您的标记!哪些选择器没有按预期工作,它错过/选择了太多?
-
在这里工作正常jsfiddle.net/psradich/fXCR8我们可以看到你的html吗?
标签: javascript jquery