gpt4 book ai didi

javascript - onkeyup 事件停止触发 onchange ajax 事件

转载 作者:行者123 更新时间:2023-11-30 10:50:51 24 4
gpt4 key购买 nike

所以我在文本框的 onchange 事件上有一个 AJAX 调用,在 onkeyup 事件上有一个非常简单的掩码函数(向 SSN 添加破折号)。这两个函数本身都可以正常工作,但是,如果掩码插入破折号然后我离开文本框,onchange 事件将不会触发。

有人知道为什么吗?我的猜测是,通过使用掩码函数更改值,文本框不再认为有任何更改。

谢谢

SSN: <input id="SSN" maxlength="11" size="8" onchange="validateSSN();" onkeyup="mask()">
<span id="SSNnote"></span>

<script type="text/javascript">

function validateSSN(){
var cfc = new myajax();
cfc.setCallbackHandler(function(AjaxResults) {UpdateValidationNotes('SSNnote', AjaxResults);});
cfc.ValidateSSN(document.getElementById("SSN").value);
}

function mask(){

var temp = document.getElementById("#WhichName#").value;
var e = window.event;
if (e.keyCode == 189){

document.getElementById("SSN").value = temp.substring(0,temp.length-1);
return false;
}

if ( temp.length == 3 || temp.length == 6)
if (e.keyCode != 8)
document.getElementById("SSN").value = document.getElementById("SSN").value + '-';

}

最佳答案

是的,您是对的,如果您使用 javascript 更改框的值,onchange 将不会触发。因此,您需要在 mask 函数中手动调用 validateSSN()

关于javascript - onkeyup 事件停止触发 onchange ajax 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5406777/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com