【问题标题】:select all checkbox checked all checkboxes have image in the label are not checked选中所有复选框已选中所有复选框在标签中有图像未选中
【发布时间】:2013-10-25 16:53:16
【问题描述】:

我有复选框,上面有一个标签,还有复选框图像。 当我单击复选框内部复选框时,我在选中和取消选中时切换标签中的图像。但是当我单击全选复选框时,浏览器复选框在内部选中,但标签中的图像没有像选中一样更改. 我试过这个

if(chkSelectAll)
{
    var allSelected = true;             
    for (var i = 0; i < document.forms[0].elements.length; i++)
    {
        var e = document.forms[0].elements[i];
        if (e.type == 'checkbox')
        {
            var strName="";
            strName = e.name;
            if(strName.indexOf(datalist) >= 0 && !e.checked)
            {
                allSelected = false;
                break;
            }                           
        }
    }
    if(allSelected)
        currentBox.checked = true;
    else
        currentBox.checked = false;
}

我的 HTML 代码是

全选

'文本='' onclick="CheckSelectAll(this,chkSelectAllPrimaryCustomFields,'lstPrimaryCustomFields');" runat="server" ID="chkPrimaryCustomFields" /> 

谁能帮帮我 提前致谢。

我想要加载页面时加载的通用代码

【问题讨论】:

  • 请发布您的html代码
  • 我没有看到任何 jQuery。

标签: javascript


【解决方案1】:

如果条件为真,为什么不更改标签?

在 for 循环中相应地更改标签

for (var i = 0; i < document.forms[0].elements.length; i++) {

//change labels

}

【讨论】:

    【解决方案2】:

    您根本没有更改代码中的标签,请发布此脚本指向的 HTML,以便我们可以为您提供更详细的解决方案,了解如何实现这一点。

    (此答案将根据回复进行编辑)。

    【讨论】:

      【解决方案3】:

      您可以按照此代码进行操作。 在html代码中

      <table>
                  <thead>
                      <tr>
                          <th
                              @using (Html.BeginForm("admin","Admin",FormMethod.Get))
                              {
                                  <input type="checkbox" name="ckbCheckAll" id="ckbCheckAll" value="" onclick="checkAll();" />
                              }
                          </th>
                          <th>No</th>
                          <th>Title</th>
                      </tr>
                  </thead>
      
                  @foreach(var item in Model)
                  {
                      i++;
                      <tr>
                          <td>
                              <input type="checkbox" name="cid" id="@i" value="@item.ID" />
                          </td>
                          <td>@i</td>
                          <td>@item.Title</td>
                      </tr>
                  }
      </table>
      

      以及 javascript 中的函数 checkAll():

      function checkAll() {
              var check = document.getElementById("ckbCheckAll").checked;
              for (var i = 1; i <= document.getElementsByName("cid").length; i++) {
                  document.getElementById(i).checked = check;
              }
          }
      

      上面的代码正在运行。 希望对你有所帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-06-20
        • 1970-01-01
        • 2010-10-27
        • 1970-01-01
        • 2013-04-26
        • 1970-01-01
        相关资源
        最近更新 更多