我有2个文本框。如果第一个文本框为空,则当我点击选项卡或用户有意将焦点放在第二个文本框上时,它无法进入第二个文本框。
HTML 的
<input type="text" id="txt1" />
<input type="text" id="txt2" />
的jquery / JavaScript的的
$("#txt1").keydown(function (e) {
if (e.which == 9) {
if ($.trim($(this).val() == ""))
$(this).focus();
}
});
if ($("#txt2").is(":focus")) {
if ($.trim($("#txt1").val() == ""))
$("#txt1").focus();
}
请参阅:http://jsfiddle.net/N8GAr/
我需要帮助。感谢。
答案 0 :(得分:3)
像这样使用jquery的focus()功能
$("#txt2").focus(function() {
alert('abc');
if ($.trim($("#txt1").val() == ""))
$("#txt1").focus();
});
上看到您想要的结果
答案 1 :(得分:1)
试试这个
$("#txt1").keydown(function (e) {
if (e.which == 9) {
if ($.trim($(this).val() == ""))
$(this).focus();
}
});
$("#txt2").focus(function(){
if ($.trim($("#txt1").val() == ""))
$("#txt1").focus();
});
答案 2 :(得分:1)
请找到以下解决方案:
$(document).ready(function() {
$("#txt2").focus(function(){
if(!$("#txt1").val())
$("#txt1").focus();
});
});
答案 3 :(得分:1)
您不需要在那里进行双重逻辑检查。例如,如果第一个字段为空,则此代码不允许第二个字段被聚焦。你想要这个,对吧? 如果用户在第一个字段中按Tab键,它仍将保持第一个字段的焦点。如果第一个字段不为空,则仅移动到第二个字段。
$("#txt2").focus(function(e){
if (!$.trim($("#txt1").val())) {
$("#txt1").focus();
return false;
}
});