Javascript 在我失去焦点后,如何启动onkeyup事件?

Javascript 在我失去焦点后,如何启动onkeyup事件?,javascript,html,asp.net,Javascript,Html,Asp.net,我已经创建了一个onkeyup事件,一旦我在任何地方单击另一个文本框,然后再次单击触发onkeyup的文本框,它就不会触发它。 不过,当我第一次单击文本框时,它确实起作用了。 我的代码: HTML: Javascript: var usernamechckertimer; var spanAvailability=$get(“spanAvailability”); 函数检查用户名用法(用户名){ clearTimeout(usernameCheckerTimer); 如果(

我已经创建了一个onkeyup事件,一旦我在任何地方单击另一个文本框,然后再次单击触发onkeyup的文本框,它就不会触发它。
不过,当我第一次单击文本框时,它确实起作用了。
我的代码:

HTML:





Javascript:


var usernamechckertimer;
var spanAvailability=$get(“spanAvailability”);
函数检查用户名用法(用户名){
clearTimeout(usernameCheckerTimer);
如果(username.length==0)
spanAvailability.innerHTML=“”;
否则{
spanAvailability.innerHTML=“正在检查…”;
usernameCheckerTimer=setTimeout(“checkUsernameUsage(““+username+”);”,750);
}
}
函数检查用户名用法(用户名){
//启动ajax pagemethod调用
//完成后,将执行onsucced回调
PageMethods.IsUserAvailable(用户名,OnSucceeded);
}
//成功完成page方法时调用的回调函数。
函数OnSucceeded(结果、用户上下文、方法名){
if(methodName==“IsUserAvailable”){
如果(结果==真)
spanAvailability.innerHTML=“不可用”;
其他的
spanAvailability.innerHTML=“可用”;
}
}


有什么建议吗?

删除有效的
AutoPostBack=“true”
。顺便说一下,我还有一个问题。它实际上间歇性地工作。它可能在我刷新页面时工作一次,也可能不会,有点随机。知道为什么吗?
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
                <span id="spanAvailability"></span>
                <br />
                <asp:TextBox ID="email" runat="server" AutoPostBack="true" onkeyup="checkUsernameUsage(this.value)" style="font-size: 20px; text-align:center; border-radius: 20px;" class="RegisterButton" ValidationGroup="registergroup" placeholder="What's your Email?"></asp:TextBox>
                <br />   
                <asp:Label ID="Label2" runat="server"></asp:Label>
                <br />
                </ContentTemplate>
                </asp:UpdatePanel>
<script type="text/javascript">
var usernameCheckerTimer;
                 var spanAvailability = $get("spanAvailability");

                 function checkUsernameUsage(username) {
                     clearTimeout(usernameCheckerTimer);
                     if (username.length == 0)
                         spanAvailability.innerHTML = "";
                     else {
                         spanAvailability.innerHTML = "<span style='color: #ccc;'>checking...</span>";
                         usernameCheckerTimer = setTimeout("checkUsernameUsage('" + username + "');", 750);
                     }
                 }

                 function checkUsernameUsage(username) {
                     // initiate the ajax pagemethod call
                     // upon completion, the OnSucceded callback will be executed
                     PageMethods.IsUserAvailable(username, OnSucceeded);
                 }

                 // Callback function invoked on successful completion of the page method.
                 function OnSucceeded(result, userContext, methodName) {
                     if (methodName == "IsUserAvailable") {
                         if (result == true)
                             spanAvailability.innerHTML = "<span style='color: Red;'>Unavailable</span>";
                         else
                             spanAvailability.innerHTML = "<span style='color: DarkGreen;'>Available</span>";
                     }
                 }
    </script>