【问题标题】:Jquery dynamically selectorJquery 动态选择器
【发布时间】:2021-09-29 18:20:16
【问题描述】:

我想选择在 jquery 中动态评估的 ID 的子元素,但代码不起作用。你认为错误在哪里? data_id 是动态的。

 $("#duplicater" + data_id + ".chat_box_right_button_collapse").toggleClass("show");

【问题讨论】:

  • 你能展示一下你的元素是什么样子的吗?
  • 如果你想选择那个班级的孩子,那么你会错过.之前的空格
  • 我认为您缺少空格或 ' > ' ,具体取决于您是要选择 #duplicater[data_id] 的所有后代还是仅直接子代
  • ".chat_box -> " .chat_box

标签: javascript jquery jquery-selectors


【解决方案1】:

如果您的子元素是类为 chat_box_right_button_collapse 的元素,请尝试为 CSS 选择器留一个空格:

$("#duplicater" + data_id + " .chat_box_right_button_collapse").toggleClass("show");

如果您的子元素是直接子元素,您也可以使用> 选择器:

$("#duplicater" + data_id + " > .chat_box_right_button_collapse").toggleClass("show");

【讨论】:

    【解决方案2】:

    您可以使用模板文字

    $(`#duplicater${data_id} .chat_box_right_button_collapse`).toggleClass("show");
    

    【讨论】:

      【解决方案3】:

      在您的代码中,您的动态 id 和类名(点之前)之间没有空格。请检查并与您的比较

      $("#duplicater" + data_id + " .chat_box_right_button_collapse").toggleClass("show");
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-05
        • 1970-01-01
        相关资源
        最近更新 更多