繁体   English   中英

屏蔽输入插件jQuery

[英]Masked Input Plugin jquery

我要将此插件用于asp.net文本框。

文本框是:

   <asp:TextBox ID="txtBox" runat="server" Text='<%# Bind("Phone") %>' />                 

当文本框为非空时,我希望格式为(999)999-9999。 但是当文本框为空时为null。

我想通过文本选择其他遮罩。 代码如何?

我在下面尝试过:

谢谢。

  jQuery(function($){  
    if(document.getElementById("<%# txtBox.ClientID %>")).innerText =
       $("<%# txtBox.ClientID %>").mask("(999) 999-9999");  
    else
      $("<%# txtBox.ClientID %>").mask("");
  });

UPDATE

文本框位于gridview内。 它喜欢:

<asp:TemplateField HeaderText="OrgContactPhone" SortExpression="OrgContactPhone">
            <EditItemTemplate>
                <asp:TextBox ID="txtBox" runat="server" Text='<%# Bind("OrgContactPhone") %>' MaxLength="50">
                </asp:TextBox>
<asp:TextBox ID="txtBox" runat="server" Text='<%# Bind("Phone") %>' class="MaskText" />


$(document).ready(function () {
    var obj = $('.MaskText');
    if ($.trim(obj.val()).length !== 0) {
        obj.mask("(999) 999-9999");
    }
    else {
        obj.mask("");
    }
});

首先,我可能是错的,但是我认为“由于ASP.net的工作原理,“ if(document.getElementById("<%# txtBox.ClientID %>")).innerText = ”将无法工作。

其次,ASP.net内置了屏蔽组件。

第三,您可以尝试一下。

jQuery(function($){ 
    //Code function here to detect on text change for the textbox
    {
    if(document.getElementById("<%# txtBox.ClientID %>").innerText != "")
       $("<%# txtBox.ClientID %>").mask("(999) 999-9999");  
    else
      $("<%# txtBox.ClientID %>").mask("");
    }
  });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM