我想检查jQuery中输入框模糊的一些条件。一旦我从输入框中失去焦点,我就无法再次关注该框。
代码:
if ($("#Amount").val() < 10000) {
alert('The minimum amount is $10,000.');
$("#Amount").focus();
}
else {
}
一旦我从$("#Amount")
失去焦点,它就不会把焦点放在那个控制上。
提前致谢。
答案 0 :(得分:2)
嗯,这就是你要找的东西,我相信:http://jsfiddle.net/6Seks/5/
编辑:刚刚注意到我的答案与Scroobler's post的接近程度,尽管我的答案不会超过10000。
答案 1 :(得分:1)
.focus()
将关注该元素,但在.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的评论*
进行了更正答案 2 :(得分:0)
尝试这样的事情:
$("#Amount").blur(function() {
if ($(this).val() < 10000) {
alert('your message...');
$(this).focus();
}
})
答案 3 :(得分:0)
我不确定我是否明白你在寻找什么 如果您在执行某些操作后禁用输入框,则可以使用:
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;
};
})
...对不起,如果这不是你想要的。