【发布时间】:2016-11-21 17:20:46
【问题描述】:
从使用 .NET 框架 2.0 的 ASP.NET Web 表单应用程序 ASP.NET 页面,使用 Jquery 版本 1.8.2,使用 ASP.NET GridView 控件。
当我点击自动支票、自动电子转帐或手动 3 个复选框中的任何一个时,我需要能够设置 hiddenfield : hidIsDirty 为值“true”。请告诉我如何使用 JQuery 实现这一点,因为我在 jquery 中编写了以下代码,它没有设置隐藏字段的值。我将访问代码后面的隐藏字段 (aspx.cs)。
您能帮我重构我的 jquery 代码并帮我实现 3 个复选框的要求吗?
代码如下:
<script>
$("[id*=rdoSAPPaymentAuto]").live("click", function () {
var parentRow = $(this).parent('tr');
var hiddenField=parentRow.find('input[id$=hidIsDirty]');
alert(hiddenField.val("true"));
});
$("#<%=gvPaymentList.ClientID %> input[id*='rdoSAPPaymentAuto']").click(function () {
var parentRow = $(this).parent('tr');
var hiddenField=parentRow.find('input[id$=hidIsDirty]');
alert(hiddenField.val("true"));
});
$("#<%=gvPaymentList.ClientID %> input[id*='rdoSAPPaymentAutoEFT']").click(function () {
var parentRow = $(this).parent('tr');
var hiddenField=parentRow.find('input[id$=hidIsDirty]');
alert(hiddenField.val("true"));
});
$("#<%=gvPaymentList.ClientID %> input[id*='rdoSAPPaymentManual']").click(function () {
var parentRow = $(this).parent('tr');
var hiddenField=parentRow.find('input[id$=hidIsDirty]');
alert(hiddenField.val("true"));
});
</script>
WebForm.aspx page:
<asp:GridView ID="gvPaymentList" runat="server" CellPadding="0" EmptyDataText="No payments found."
CssClass="green greenBorder setpadding" AutoGenerateColumns="false" OnRowDataBound="gvPaymentList_RowDataBound"
AllowSorting="true" AlternatingRowStyle-CssClass="altRowColor" RowStyle-CssClass="RowColor"
OnSorting="gvPaymentList_Sorting" ShowFooter="false">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
Approve for SAP Auto Payment or Manual Pay Req
<input id="btnAutoPayment" value="Set All to Auto Payment" type="button" />
</HeaderTemplate>
<ItemTemplate>
<asp:CustomValidator ID="cvAutoPayCheck3" runat="server" OnServerValidate="cvAutoPayCheck_ServerValidate">*</asp:CustomValidator>
<asp:RadioButton ID="rdoSAPPaymentAuto" GroupName="SAPPaymentOption" runat="server"
AutoPostBack="true" OnCheckedChanged="rdoSAPPaymentAuto_CheckedChanged" Text="Auto-Cheque" />
<asp:RadioButton ID="rdoSAPPaymentAutoEFT" GroupName="SAPPaymentOption" OnCheckedChanged="rdoSAPPaymentAutoEFT_CheckedChanged" runat="server"
AutoPostBack="true" Text="Auto-EFT" />
<asp:RadioButton ID="rdoSAPPaymentManual" GroupName="SAPPaymentOption" runat="server"
AutoPostBack="true" OnCheckedChanged="rdoSAPPaymentManual_CheckedChanged" Text="Manual" />
<asp:RadioButton ID="rdoSAPPaymentPending" GroupName="SAPPaymentOption" runat="server"
Text="Pending" />
<asp:HiddenField ID="hidSAPPayment" runat="server" />
<asp:HiddenField ID="hidIsDirty" runat="server" />
</ItemTemplate>
<ItemStyle Width="310px" />
</asp:TemplateField>
</Columns>
</asp:GridView>
【问题讨论】:
标签: javascript jquery asp.net jquery-ui webforms