【发布时间】:2016-12-27 10:40:25
【问题描述】:
您好,我正在 jquery 的帮助下开发一个 asp.net 应用程序。我的应用程序中有一个gridview。它有每一行的复选框。连同复选框,我将一些值绑定到隐藏字段。 这是我的 gridview 代码。
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chkRow" runat="server" />
<asp:HiddenField ID="Hidden" runat="server" Value='<%#Eval("Name")%>' />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Name" HeaderText="Name" ItemStyle-Width="150" />
以上代码呈现输出如示例
Name
chkbox Andy
chkbox Marry
chkbox Daniel
我也将相同的名称(在 Boundfield 中使用)绑定到 hiddenfield。我有一个带有多选功能的下拉菜单。每当我从下拉列表中选择 Andy 时,我想禁用 gridview 中的 Andy 复选框。我正在尝试如下。我在第一个数组中获取下拉选择值,在第二个数组中获取所有隐藏值字段。我正在将公共元素推送到第三个数组。 这是我的代码。
var result = new Array();
for (var i = 0; i < ResultArrayFirst.length; i++) {
if (selected.indexOf(ResultArrayFirst[i]) >= 0) {
result.push(ResultArrayFirst[i]);
}
}
例如,结果数组将包含诸如 Andy,Marry 之类的值。在这种情况下,我想禁用留给安迪和玛丽的网格复选框。我尽力了我的水平,但无法修复它。任何帮助,将不胜感激。非常感谢。
我尝试如下。
for (var k = 0; k < result.length; k++)
{
$('#<%= GridView1.ClientID %> input[type="hidden"]').each(function () {
if($(this).val()==result[k])
{
//Not sure how to hide disable checkbox GridView1.rows[i].cells[0].getElementsByTagName("INPUT")[0].checked = true;
}
});
break;
}
这仍然无法正常工作。在这方面需要任何帮助
【问题讨论】: