2010-03-03 28 views
0

我有問題,同時使用jQuery的maskedinput與asp.net文本框。 我有一個複選框,當我檢查將設置一個掩碼到文本框,並取消它時更改掩碼。當面具完成填充文本框之前焦點丟失時將出現問題。jQuery的屏蔽輸入與asp.net控制問題

我該如何解決這個問題?

這裏是我的代碼:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title>Untitled Page</title> 



    <script src="js/jquery-1.4.1.js" type="text/javascript"></script> 


    <script src="js/jquery.maskedinput-1.2.2.js" type="text/javascript"></script> 
    <script type="text/javascript"> 


     function mycheck() { 

      if ($('#<%=chk.ClientID %>').is(':checked')) 

       { 
         $("#<%=txt.ClientID %>").unmask(); 
         $("#<%=txt.ClientID %>").val(""); 
         $("#<%=txt.ClientID %>").mask("999999999999"); 

        } 
        else 
        { 
         $("#<%=txt.ClientID %>").unmask(); 
         $("#<%=txt.ClientID %>").val(""); 
         $("#<%=txt.ClientID %>").mask("(999)999-9999"); 

        } 






     } 
    </script> 

    <style type="text/css"> 
     #form1 
     { 
      margin-top: 0px; 
     } 
    </style> 

</head> 
<body> 
    <form id="form1" runat="server"> 
     <asp:ScriptManager ID="ScriptManager1" runat="server" /> 
     <div> 

     <p> 
      <asp:CheckBox ID="chk" runat="server" CssClass="kk" 
       onclick="mycheck()" /> 
     </p> 

     <p> 
      <asp:TextBox ID="txt" runat="server" CssClass="tt" ></asp:TextBox> 

     </p> 


     </div> 
    </form> 
</body> 
</html> 
+0

爲什麼你需要清空文本框擺在首位? –

回答

0

存在與插件本身有問題,我報告說。

3

這是設計。我的屏蔽輸入插件的默認值是清除輸入,如果沒有完全填充屏蔽。如果你想讓你的面具允許不完整的輸入,你可以插入'?'字符,你希望可選字符開始。

例如:

要使用一個可選擴展$(selector).mask('(999) 999-9999 ?x99999');

屏蔽電話號碼來撥打電話號碼,一切都是可選的$(selector).mask('?(999) 999-9999');