【问题标题】:loop each matching span循环每个匹配的跨度
【发布时间】:2020-08-12 21:20:28
【问题描述】:

我有几个跨度类,我想单独更新它们的值。我正在使用 JQuery 的 $each 但我无法使其工作

<span class='my-span'>hello</span>
<span class='my-span'>world</span>
<span class='my-span'>from</span>
<span class='my-span'>my</span>
<span class='my-span'>code</span>

而js部分是:

$(document).ready(function(){
  $('span.chat-datetime').each(function(){
    $(this).innerText = "modified";
  });
});

https://jsfiddle.net/fwcs5x1k/

任何解释为什么它不起作用?以及如何使其工作?谢谢

【问题讨论】:

    标签: jquery each


    【解决方案1】:

    首先你应该使用$().text()方法来修改文本并且你使用的选择器类在dom中不存在。试试这个它是否有效

    $(document).ready(function() {
      $('.my-span').each(function() {
    
        $(this).text("modified");
      });
    });
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <span class='my-span'>hello</span>
    <span class='my-span'>world</span>
    <span class='my-span'>from</span>
    <span class='my-span'>my</span>
    <span class='my-span'>code</span>

    【讨论】:

    • 感谢您的回复。 $().text() 成功了。你能解释一下为什么$(".my-span")[0].innerText = "testing" 有效,而在每个循环中同样无效吗?
    • 可能是因为您将纯 js 和 jquery 结合在一起。如果有效,请接受答案谢谢@Raza
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多