Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为两个不同的动态生成列表选择所有按钮_Javascript_Jquery_Html_List_Checkbox - Fatal编程技术网

Javascript 为两个不同的动态生成列表选择所有按钮

Javascript 为两个不同的动态生成列表选择所有按钮,javascript,jquery,html,list,checkbox,Javascript,Jquery,Html,List,Checkbox,我有两个无序列表,一个按频率排序,另一个按字母顺序排序,是通过xQuery生成的。默认情况下显示频率排序列表,而通过Javascript隐藏字母列表。然后,用户可以选择单击链接以显示字母列表,然后隐藏频率列表。用户可以在列表之间来回切换。两个列表都显示在颜色框弹出窗口中 我需要在每个列表中添加复选框,并包含一个按钮,用于在每个列表的“全选”/“全部清除”之间切换。我的问题是,当我查看频率排序列表时,单击“全选”,然后单击链接以查看字母列表,所有值仍处于选中状态,切换按钮文本变回“全选”。现在单击

我有两个无序列表,一个按频率排序,另一个按字母顺序排序,是通过xQuery生成的。默认情况下显示频率排序列表,而通过Javascript隐藏字母列表。然后,用户可以选择单击链接以显示字母列表,然后隐藏频率列表。用户可以在列表之间来回切换。两个列表都显示在颜色框弹出窗口中

我需要在每个列表中添加复选框,并包含一个按钮,用于在每个列表的“全选”/“全部清除”之间切换。我的问题是,当我查看频率排序列表时,单击“全选”,然后单击链接以查看字母列表,所有值仍处于选中状态,切换按钮文本变回“全选”。现在单击“全选”按钮时,文本将切换回“全部清除”,但不会取消选中复选框

当用户在两个列表之间切换时,是否有方法重置复选框?因此,当他们点击字母列表时,复选框都未选中,按钮上写着“全选”

代码如下:

    $(document).ready(function(){
     $('.select-all:button').toggle(function(){
        $('input:checkbox').attr('checked','checked');
        $(this).val('Clear All');
      event.preventDefault();
    },function(){
        $('input:checkbox').removeAttr('checked');
        $(this).val('Select All');
      event.preventDefault();        
    })
  })

    <li>
    <input type="checkbox">{$display-value}</input>
    </li>

    <input type="button" value="Select all" class="select-all"></input>,
    <input type="submit" value="Submit"></input>

为什么你不能像你已经在使用的切换功能那样对待你的两个列表显示呢?当显示任何列表时,第一步是选择所有作为复选框的子节点并删除选中的属性

或者,编写一个函数,接受父元素并遍历其下的子复选框,然后取消选中它们。当您调出第一个列表时,首先调用此函数,或者在这两个列表之间切换


你的问题有什么我不明白的地方吗?这似乎无关紧要,尤其是因为示例中的代码基本上满足了您的要求:

很抱歉,我不熟悉jQuery,这是我继承的代码。列表已经设置好了,我只需要添加复选框,当用户打开按字母顺序排序的列表时,“全部选择”按钮文本保持为“全部清除”。