我有一个文本框,其中包含一个onblur()事件和一个带有onclick()的按钮。 但是,当我在文本框中键入内容时,如果不单击光标离开文本框的位置,则仅单击按钮会触发onblur()事件。它将停止按钮的onclick事件。
function onblur() {
alert("onblur");
}
function fnValidate() {
alert("Validate");
}
<input type="text" id="txtUserName" onblur="fnUserChange()" class="User_Name" placeholder="User Name">
<button name="button" type="button" class="action_button primary" id="btnsave" onclick="return fnValidate();">Capture User</button>
答案 0 :(得分:1)
function fnUserChange() {
console.log("onblur");
}
function fnValidate() {
console.log("Validate");
}
<input type="text" id="txtUserName" onblur="fnUserChange()" class="User_Name" placeholder="User Name">
<button name="button" type="button" class="action_button primary" id="btnsave" onclick="fnValidate();">Capture User</button>
答案 1 :(得分:1)
正如@JeremyJStarcher在评论中所说,您使用alert
的事实会改变焦点,因此会产生假阴性。如果您使用console.log
(并且函数名称正确。未定义fnUserChange()
。),您的代码将起作用。
function fnUserChange() {
console.log("onblur");
}
function fnValidate() {
console.log("Validate");
}
<input type="text" id="txtUserName" onblur="fnUserChange()" class="User_Name" placeholder="User Name">
<button name="button" type="button" class="action_button primary" id="btnsave" onclick="return fnValidate();">Capture User</button>