2011-05-04 35 views
1

我的問題是我怎麼會調用jQuery的功能。請檢查我的代碼,如果有一定的調整..在jquery上調用掩碼函數時出現問題?

jQuery的

jQuery(function($){ 
    $("txtPhone").mask("(999) 999-9999"); 
}); 

asp.net

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

&nbsp;<asp:TextBox ID="txtPhone" runat="server"></asp:TextBox> 

回答

1
jQuery(function($){ 
    $('<%=txtPhone.ClientID%>').mask("(999) 999-9999"); 
}); 

編輯

jQuery(function($){ 
     $('.mask').mask("(999) 999-9999"); 
    }); 

<asp:TextBox CssClass="mask" ></asp:TextBox> 
+0

它不工作 – 2011-05-04 03:58:42

+0

u能完全貼標記.. – 2011-05-04 04:15:36

+0

或使用類選擇 – 2011-05-04 04:18:15

1

我想應該是這樣的

$(function(){ 
    $('<%= txtPhone.ClientID %>').mask("(999) 999-9999"); 
}); 
1

Govind's和Edgar的答案很接近,因爲他們處理C lientID。如果TextBox位於另一個容器控件中,則這是必需的。但是,如果在選擇器上沒有#前綴,jQuery將嘗試查找名稱爲「txtPhone」(或ClientID等效項)的所有標籤。當您需要獲取某個頁面上的所有div,td,label等標籤時,可以使用這種選擇器,而不是當您選擇標識值爲txtPhone的標籤時。要將ID用作選擇器,您需要在選擇器前加上#作爲前綴。

Govind的編輯答案有效,但不適用於將特定掩碼添加到特定控件。如果你有一個需要類似掩碼的控件列表,它會工作的很好。例如,您可以使用該類將掩碼應用於需要「手機」的所有控件,而不是通過單個選擇器或使用多個選擇器將它們全部列出。

Schwechel的回答是最正確的,但沒有考慮ClientID。這個問題沒有指定上下文來確定是否需要ClientID,但爲了以防萬一,添加它並沒有什麼壞處。

使用此代碼:

$(function(){ 
    $('#<%= txtPhone.ClientID %>').mask("(999) 999-9999"); 
});