2011-10-21 31 views
0

我正在使用jQuery的流行的Validate插件來驗證我所有的字段。如果輸入字段沒有在服務器上運行,並且因此不重命名輸入的所有ID和名稱,則此功能非常有用。當我使用需要ID的jquery時,如何繞過asp.net自動生成ID?

我想知道是否有不同的方式來選擇jQuery中的輸入,所以我仍然可以使用插件。 jQuery的低於:

<script type="text/javascript"> 
jQuery.validator.messages.required = ""; 
$(document).ready(function() { 
    $('#form1').validate({ 
     rules: { 
      firstName: { 
       required: true, 
      }, 
     } 
    }); 
}); 

目前,如果我使用<asp:TextBox.../>標識出來,以 「ContentPlaceHolderBody_firstName」 而得名出來爲 「ctl00 $ ContentPlaceHolderBody $名字」。

我甚至嘗試在jquery中替換名稱來反映ID和名稱都無濟於事。

這是最好的方法是什麼?我可以添加一個班級並選擇這種方式嗎?如果是這樣,jquery選擇器會是什麼樣子?

任何幫助表示讚賞!謝謝!

+0

什麼版本的ASP你用的是.NET嗎? –

回答

2

你可以寫一些在線的服務器端代碼,如:

$('#form1').validate({ 
     rules: { 
      <%= txtFirstName.ClientID %>: { 
       required: true, 
      }, 
     } 
    }); 
0

類wo的jquery選擇器ULD是$(」類名)

+0

$('。classname') - 缺少一個報價 – jbabey

0

.net 4.0你可以設置設置ClientIDMode="static"和具有可預測的控件ID

例如

<asp:Label ID="Label1" runat="server" ClientIDMode="static" /> 

,並在JavaScript方面,你可以有你的選擇

$("#Label1").hide(); 
0

的ID類添加到您的ASP的控制,然後是類而不是ID選擇