在 chrome (windows) 中,我遇到了一个奇怪的问题。
我在更改选择下拉列表中的值后提示警告。
当我单击“确定”时,如果我专注于 1 个输入文本,则看不到蓝色边框和光标。
在 Firefox 中,一切都很好。知道如何解决吗? here is the fiddle
[JS]
(function (){
var focusing_val = "";
$("#select").focus(function(){
focusing_val = $(this).val();
}).change(function (e) {
console.log(focusing_val > 2);
if ($(this).val() > 2) {
e.preventDefault();
alert("error");
$(this).val(focusing_val);
return false;
}
});
})();
[HTML]
<input type="text" value="123" />
<select name="test1" id="select">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
最佳答案
尝试使用 setTimeout..
对我来说,它有效..
(function (){
var focusing_val = "";
$("#select").focus(function(){
focusing_val = $(this).val();
}).change(function (e) {
console.log(focusing_val > 2);
if ($(this).val() > 2) {
e.preventDefault();
setTimeout(function() {
alert("error");
},0);
$(this).val(focusing_val);
return false;
}
});
})();
关于javascript - Chrome (WINDOWS) 在警告消息后缺少光标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32081763/