繁体   English   中英

使用JQuery在GridView中获取文本框值,val()无法正常工作

[英]Getting textbox value inside gridview using JQuery, val() not working

我在GridViewItemTemplateTextBox 我将其CssClass分配给grdtxtbox并尝试使用.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也不是我在智能感知中得到.val()

更新但是.value在那里工作正常。 .val()有什么问题?

尝试使用它,但我不确定:

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

使用eq选择器选择第n个元素,如此答案所示: 如何获取第n个jQuery元素

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
}

暂无
暂无

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

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