我有一个gridview
和在页脚中,它将总价值在grandTotalPCT
。如果grandTotalPCT
不等于100,我希望按钮btnUpdatePCTD
保持禁用状态,如果它等于100,则启用该按钮。在gridview中启用按钮与jquery
下面的代码是从另一个函数调用的,该函数的作用是更改值grandTotalPCT
。问题是按钮状态不会改变。
<asp:TemplateField HeaderText="Line" ItemStyle-Width="50%">
<ItemTemplate>
<asp:Label ID="lblLineD" runat="server" Text='<%# Bind("line") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:Button ID="btnUpdatePCTD" runat="server" Text="Update" CssClass="btn btn-default btn-sm" OnClick="updateDockPCT" Enabled="False" />
</FooterTemplate>
<FooterStyle HorizontalAlign="Center" />
</asp:TemplateField>
<asp:TemplateField HeaderText="% Target" ItemStyle-Width="25%">
<ItemTemplate>
<asp:TextBox ID="tbPTC" runat="server" Text='<%# Convert.ToDouble(Eval("dailypercent")) * 100 %>' CssClass="tbPTC"></asp:TextBox>
</ItemTemplate>
<FooterTemplate>
<asp:Label ID="grandTotalPCT" runat="server" CssClass="grandTotalPCT"></asp:Label>
</FooterTemplate>
</asp:TemplateField>
//To get grand Total PCT
function CalculateGrandTotalPCT() {
var grandTotalPCT = 0.0;
$('#<%=gvDockPCT.ClientID %> tr:gt(0)').each(function() {
grandTotalPCT = grandTotalPCT + parseFloat($(this).find('.tbPTC').length == 0 || !$(this).find('.tbPTC').val() ? 0 : $(this).find('.tbPTC').val());
});
$('#<%=gvDockPCT.ClientID %> .grandTotalPCT').text(grandTotalPCT.toFixed(3));
if (grandTotalPCT.toFixed(3) == 100.000)
{
$('#<%=gvDockPCT.ClientID %> .btnUpdatePCTD').prop('disabled', false);
}
else
{
$('#<%=gvDockPCT.ClientID %> .btnUpdatePCTD').prop('disabled', true);
}
}
我不算行,我总所有的价值行。当使用模糊方法更改字段时,总数将被重新计算。 – user2369812
$('input [type =“submit”]')。prop('disabled',false)可以工作,但会禁用所有按钮。 – user2369812
您可以展开RowDataBound以包含行及其值,请参阅我的更新答案。 – VDWWD