Javascript 如果用户名字段为空,jQuery将禁用登录提交按钮
如果用户名文本框字段为空,我尝试禁用提交按钮Javascript 如果用户名字段为空,jQuery将禁用登录提交按钮,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,如果用户名文本框字段为空,我尝试禁用提交按钮 $("#txtUserName").bind("input propertychange change keyup paste", setButtonState); var setButtonState = function () { if ($("#txtUserName").val().trim() == "") { $("#login").attr("disabled", true); } else {
$("#txtUserName").bind("input propertychange change keyup paste", setButtonState);
var setButtonState = function () {
if ($("#txtUserName").val().trim() == "") {
$("#login").attr("disabled", true);
}
else {
$("#login").removeAttr("disabled");
}
}
上述代码在所有情况下都可以正常工作,但当用户选择先前保存的用户名(自动完成)时除外。
我无法为文本框设置自动完成关闭选项
当用户在自动完成用户名中选择文本时,如何捕获事件?只需将您的输入字段绑定到附加事件
select
,当用户从自动完成中选择某个内容时,将触发该事件
这就是你的代码。我刚刚添加了select
,并稍微重新排列了您的代码。另外,我在domready上运行了一次setButtonState()
,以确保它已被禁用
var setButtonState = function () {
if ($("#txtUserName").val().trim() == "") {
$("#login").attr("disabled", true);
}
else {
$("#login").removeAttr("disabled");
}
}
$("#txtUserName").bind("input propertychange change keyup paste select", setButtonState);
setButtonState();
我还更新了以演示它。
我无法设置文本框的“自动完成”选项。
你的意思是你不知道怎么做,还是不被允许?难道
不比摆弄所有的JS更容易吗?我猜你要找的是“选择”。您可以将其绑定到您的输入字段。我尝试过使用“选择事件”,但它在IE浏览器上不起作用。@Rorymcrossan不允许关闭“自动完成”。谢谢您的回答。我尝试过此功能,它在mozilla浏览器上起作用,但在IE上起作用。我使用的是IE10版本。请建议。@AJAYcHIGURUPATI绑定在“输入”上应在每次更改输入字段时激发。这不是你想要的吗?@AJAYcHIGURUPATI我更新了小提琴和答案。检查它现在是否工作。我试过这个,它在Mozilla上工作,而不是在IE上。我希望它也在IE上工作。对我来说,它在ie9+上工作。我的小提琴不适合你吗?