【发布时间】:2013-10-10 18:29:25
【问题描述】:
我有一个包含复选框和文本框的网格视图。我想要的是当特定行的复选框被选中时,该行的文本框将变成下拉菜单。 我使用了.show() 和.hide() 功能来显示下拉菜单和隐藏文本框。
这是gridview的复选框:
<ItemTemplate> <div style="text-align: center;">
<asp:HiddenField ID="hdn_id2" runat="server" Value='<%#Eval("Id") %>' />
<asp:CheckBox ID="NewCheckBoxImage" CssClass="NewCheckBoxImage()" onClick="NewCheckBoxImage();" runat="server" /></div>
</ItemTemplate>
这是javascript的代码:
function NewCheckBoxImage() {
var flag = false;
$('.gridAssigned input[type="checkbox"]').each(function () {
if ($(this).is(':checked')) {
flag = true;
}
});
if (flag) {
$('.NewBtnAssign').show();
$('.TextBoxCompany').hide();
$('.TextBoxBrand').hide();
$('.DDCompany').show();
$('.DDBrand').show();
}
else {
$('.NewBtnAssign').hide();
$('.TextBoxCompany').show();
$('.TextBoxBrand').show();
$('.DDCompany').hide();
$('.DDBrand').hide();
}
}
TextBoxCompany、TextBoxBrand 是文本框,DDCompany、DDBrand 是下拉菜单。选中任何复选框时,所有文本框都将被隐藏,所有下拉菜单都会显示。我希望选中复选框的行,只显示那些行的下拉列表。
【问题讨论】:
-
您正在按类选择元素,即
.NewBtnAssign这将找到具有该类的 每个 元素并显示它。将您的选择器更改为更具体的内容。 -
OT:一个附带问题:为什么要发布一个 asp.net 标签而不是 renderend HTML 输出?我只是想了解如果客户端出现问题,为什么用户还会发布服务器端代码?
标签: javascript jquery asp.net