1

这是我第一次在 Stackoverflow 中提问

我在 asp 中选择特定框时遇到同样的问题

我将较旧的帖子称为

Javascript检查表/ asp.net中的所有复选框

function toggleCheckBoxes(elem) {
  var div = document.getElementById('<% = divid.ClientID %>');
  var chk = div.getElementsByTagName('input');
  var len = chk.length;

  for (var i = 0; i < len; i++) {
    if (chk[i].type === 'checkbox') {
        chk[i].checked = elem.checked;
    }
  }
}

接着

'CheckAll
<input type="checkbox" id="chkAll" runat="server" onclick="toggleCheckBoxes(this)" />

但我的盒子是:

response.Write "</td>"
response.Write "<td nowrap><input type=checkbox name=process_1 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(9))="1" then 
  response.Write " checked"
response.Write "/>1</td>"
response.Write "<td nowrap><input type=checkbox name=process_2 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(10))="1" then 
  response.Write " checked"
response.Write "/>2</td>"
response.Write "<td nowrap><input type=checkbox name=process_3 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(11))="1" then 
  response.Write " checked"
response.Write "/>3</td>"
response.Write "<td nowrap><input type=checkbox name=process_4 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(12))="1" then 
  response.Write " checked"
response.Write "/>4</td>"
response.Write "<td nowrap><input type=checkbox name=process_5 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(13))="1" then 
  response.Write " checked"
response.Write "/>5</td>"
response.Write "<td nowrap><input type=checkbox  name=process_6 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(14))="1" then 
  response.Write " checked"
response.Write "/>6</td>"
response.Write "<td nowrap><input type=checkbox  name=process_7 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(15))="1" then 
  response.Write " checked"
response.Write "/>7</td>"
response.Write "<td nowrap><input type=checkbox name=process_8 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(16))="1" then 
  response.Write " checked"
response.Write "/>8</td>"
response.Write "<td nowrap><input type=checkbox name=process_9 "
if mEditRecMode and ConvertNullToString(mConsigneeArray(17))="1" then 
  response.Write " checked"
response.Write "/>9</td>"
response.Write "</tr>"
response.Write "</table>"

我如何全选/取消选择

请帮忙。

4

3 回答 3

0

您有 2 个使用 javascript 或代码的选项:

1)通过以下代码进行Javascript:

     function toggleCheckBoxes(rb){
        var rbs = $('#rbData :radio');
        for (var i = 0; i < rbs.length; i++) {
            if (rbs[i] != rb) 
                rbs[i].checked = false;
        }
    }

2)通过将输入类型更改为 asp:checkbox 并使其 autopostback = true 和 onSelectedIndexChangd() 函数来编写代码,toogle 复选框

于 2013-08-15T08:08:03.967 回答
0

我认为全选/取消全选复选框与 asp.net 无关。向您的表添加一个id属性,并添加一个与“checkall”标签关联的复选框并定义其 onclick 事件处理程序。

这是一个演示,您可以检查它并尝试更新自己的代码。

更新: 即使我没有经验asp.net,但有一些建议:尽可能使用循环语句,尝试使用支持ASP语法检查和突出显示的 IDE,尝试学习一些常用的调试方法。

我想它会对你有所帮助。

于 2013-08-15T08:21:41.660 回答
0

如果你使用 jquery,你可以试试这个:

function CheckAll(IsChecked) {
            $("input:checkbox").each(function () {
                $(this).prop('checked', IsChecked));
            });
        }

甚至更好,如果您基于另一个这样的复选框来切换它们

 function CheckAll() {
            $("input:checkbox").each(function () {
                $(this).prop('checked', $('#ChkAll').is(':checked'));
            });
        }
于 2013-08-15T08:00:49.730 回答