当从 1 个文本框单击到另一个文本框时,Onblur 在循环中给出连续警报
Onblur giving continuous alert in loop when clicked from 1 textbox to another
我目前正在为所有文本框调用开启模糊功能,如下所示:
<input type="text" id="fname" onblur="myFunction()">
<input type="text" id="fname2" onblur="myFunction()">
验证提供的输入并在不匹配的情况下发出警报。我在这里面临的问题是当用户从 1 个文本框模糊并直接聚焦到另一个复选框时。警报不断出现。因为它将警报的确定点击视为文本框的模糊。
我可以使用onchange。但是 onchange 在 IE 中给我一个问题。
我在这里复制了一个示例代码:
function myFunction() {
alert("Value Changed");
}
Enter your name:
<input type="text" id="fname" onblur="myFunction()">
<input type="text" id="fname2" onblur="myFunction()">
<p>When you leave the input field, a function is triggered which transforms the input text to upper case.</p>
不要在 blur
或 focus
事件中使用 alert
(或其同类 confirm
和 prompt
)。他们奇怪的 1990 年焦点窃取、世界停止的行为及其与 blur
和 focus
事件的相互作用因浏览器而异。
使用现代机制通过 DOM 显示消息,而不是 alert
。
您在评论中说:
But i need to ask a confirmation from the user here...
在 DOM 中有很多方法可以做到这一点。您可以自己编写代码,也可以使用几个库中的任何一个来为您完成大量繁重的工作。
我目前正在为所有文本框调用开启模糊功能,如下所示:
<input type="text" id="fname" onblur="myFunction()">
<input type="text" id="fname2" onblur="myFunction()">
验证提供的输入并在不匹配的情况下发出警报。我在这里面临的问题是当用户从 1 个文本框模糊并直接聚焦到另一个复选框时。警报不断出现。因为它将警报的确定点击视为文本框的模糊。 我可以使用onchange。但是 onchange 在 IE 中给我一个问题。 我在这里复制了一个示例代码:
function myFunction() {
alert("Value Changed");
}
Enter your name:
<input type="text" id="fname" onblur="myFunction()">
<input type="text" id="fname2" onblur="myFunction()">
<p>When you leave the input field, a function is triggered which transforms the input text to upper case.</p>
不要在 blur
或 focus
事件中使用 alert
(或其同类 confirm
和 prompt
)。他们奇怪的 1990 年焦点窃取、世界停止的行为及其与 blur
和 focus
事件的相互作用因浏览器而异。
使用现代机制通过 DOM 显示消息,而不是 alert
。
您在评论中说:
But i need to ask a confirmation from the user here...
在 DOM 中有很多方法可以做到这一点。您可以自己编写代码,也可以使用几个库中的任何一个来为您完成大量繁重的工作。