2015-01-02 69 views
0

我有TextBox裏面GridViewItemTemplate。我賦予它CssClassgrdtxtbox,並嘗試使用.val()使用jQuery獲取文本框內gridview值,val()不工作

aspx代碼來獲得它們的值是如下

<asp:TemplateField HeaderText="No. Of Days"> 

    <ItemTemplate> 
       <asp:TextBox ID="txtDays" runat="server" CssClass="grdtxtbox"></asp:TextBox> 
    </ItemTemplate> 
</asp:TemplateField> 

JQuery如下

var leaveTextBoxes = $(".grdtxtbox"); 
      for (var i = 0; i < leaveTextBoxes.length; i++) { 
       alert(leaveTextBoxes[i].val()); 
      } 

我可以alert(leaveTextBoxes[i].length)長度正常,意味着代碼看起來不錯,但.val()不起作用。這條線上的錯誤是Undefined is not a function,我也沒有在intellisense中獲得.val()

更新 但是.value在那裏工作正常。 .val()有什麼問題?

+2

嘗試'$(leaveTextBoxes [i]).val()' – Bharadwaj

+0

這應該是答案@Bharadwaj – Imad

+0

是解決你的問題嗎? – Bharadwaj

回答

0

嘗試使用這個,但我不知道:

$("#Gridid .grdtxtbox").each(function() { 
    alert($(this).val()); 
}); 
+0

其中'Gridid'是GridView的id值 –

0

使用eq選擇器選擇的第n個元素,如在這樣的回答:How to get nth jQuery element

for(i=0; i<leaveTextBoxes.length; i++){ 
    alert(leaveTextBoxes.eq(i).val()); 
} 

另外,

for(i=0; i<leaveTextBoxes.length; i++){ 
    alert(leaveTextBoxes.get(i).value); //plain-old-js 
    alert($(leaveTextBoxes.get(i)).val()); //dirty but works 
} 
相關問題