我想检查 jQuery 中输入框模糊的一些情况。一旦我从输入框失去焦点,我就无法再次将焦点移到该框。
代码:
if ($("#Amount").val() < 10000) {
alert('The minimum amount is $10,000.');
$("#Amount").focus();
}
else {
}
一旦我失去焦点,$("#Amount")
它就不会将焦点设置到该控件上。
提前致谢。
好吧,这就是你要找的东西,我相信:http: //jsfiddle.net/6Seks/5/
编辑:刚刚注意到我的答案与Scroobler 的帖子有多接近,尽管我的并没有遭受他所做的大于 10000 个错误。
.focus()
在 jQuery 中将专注于元素,但不会在.blur()
事件中访问文本输入。您可以使用该.setTimeout()
函数来调用焦点,以便它在事件之后.blur()
发生:
$("#Amount").blur(function() {
if ($("#Amount").val() < 10000) {
alert('The minimum amount is $10,000.');
setTimeout(function() {
$("#Amount").focus();
}, 100);
}
});
但是,我建议多做一些更改以检查使用是否实际输入了一个数字:
$("#Amount").blur(function() {
var obj = $(this);
if (isNaN(obj.val()) || obj.val() < 10000) {
$('#result').html('The minimum amount is $10,000.');
setTimeout(function() {
obj.focus();
}, 100);
}
});
在此处查看实际操作
*根据Levi Morrison的评论更正*
尝试这样的事情:
$("#Amount").blur(function() {
if ($(this).val() < 10000) {
alert('your message...');
$(this).focus();
}
})
我不确定我是否理解您在寻找什么。
如果您在执行某些操作后禁用输入框,您可以使用:
jQuery
$("#Amount").prop("disabled", true);
javascript
document.getElementById("Amount").disabled = true;
所以它会是这样的:
$("#Amount").change(function() {
if (this.value > 10000) {
alert('The minimum amount is $10,000.');
}
else {
document.getElementById("Amount").disabled = true;
};
})
...对不起,如果这不是你要找的。