Jquery每个函数不在asp.net的gridview文本框中执行
Posted
技术标签:
【中文标题】Jquery每个函数不在asp.net的gridview文本框中执行【英文标题】:Jquery each function not execute inside gridview textbox in asp.net 【发布时间】:2020-11-03 10:30:09 【问题描述】:这是我的网格视图
<asp:GridView ID="gvDoctorVisits" runat="server" DataKeyNames="AdmissionId" class="tableStyle"
AutoGenerateColumns="False" Width="100%" EmptyDataText="No record found" ShowHeaderWhenEmpty="true">
<Columns>
<asp:BoundField DataField="Amount" HeaderText="Amount"></asp:BoundField>
<%--<asp:BoundField DataField="PaidAmount" HeaderText="Paid Amount"></asp:BoundField>--%>
<asp:TemplateField HeaderText="Paid Amount">
<ItemTemplate>
<asp:TextBox ID="txtPaidAmount" type="text" runat="server" Text='<%# Eval("PaidAmount") %>' CssClass='<%# "txtDoctorPaidAmount "+"txtDPPaidAmount_"+Eval("AdmissionId") %>'></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我正在使用 j 查询我的 gridview 文本框类的每个函数,但是 jquery 每个函数没有执行,这是我的代码
$(".txtDoctorPaidAmount").on('keyup change', function ()
debugger;
var sum = 0;
$('.txtDoctorPaidAmount').each(function ()
sum += parseFloat($(this).text());
);
$("#txtPaidAmount").val(sum.toFixed(2));
);
每个函数都没有执行,如何解决?
【问题讨论】:
你怎么知道它没有被执行?您是否添加了控制台日志?不要在输入元素上使用jquery.text()
!
我调试这段代码,每个函数都没有执行
【参考方案1】:
试试这个:使用val()
代替text()
并添加console.log
以查看是否执行了迭代。
$(".txtDoctorPaidAmount").on('keyup change', function ()
var sum = 0;
$('.txtDoctorPaidAmount').each(function ()
// use val instead of text
let inputVal = $(this).val();
// this line is just to show, that each is executed
console.log('adding value: ' + inputVal);
sum += parseFloat(inputVal);
);
$("#txtPaidAmount").val(sum.toFixed(2));
);
【讨论】:
以上是关于Jquery每个函数不在asp.net的gridview文本框中执行的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET CORE 3.0 Jquery Ajax请求成功有时不在同一视图中执行
在 PostBack (ASP.NET) 上运行 jQuery 函数
ASP.NET (...) 中的 JQuery 数据表。DataTables 不是函数
使用 JQuery $.AJAX 调用调用 ASP.NET 函数