使用指定的id更改EVERY元素的innerHTML

rat*_*hah 1 javascript jquery liquid

我试图用id'filename' 更改每个元素的innerHTML值,但只有第一个更新.

我的问题是更新id为'filename' 的第一个元素.

HTML代码是作为流动模板生成的,但我认为它不应该改变任何东西.

这是HTML:

  <ul>
    {% for product in products %}
      <li>
      <p>{{ product.title }}</p>
      {% for image in product.images %}
        <img src={{ image.src }} height="200px" />
        <p>1) Is your image name descriptive? {{ image.src }}</p>
        <p>2) Is your alt tag descriptive enough? {{ product.title }}</p>
        <p>3) Is your image file type JPEG? <div id="filename">{{ image.src }}</div></p>
      {% endfor %}
      </li>
      <hr>
      {% endfor %}
    </ul>
Run Code Online (Sandbox Code Playgroud)

和javascript:

<script type="text/javascript">
  $("#filename").each(function()  {
    $(this).html("ext!");
  });
</script>
Run Code Online (Sandbox Code Playgroud)

dsg*_*fin 6

ID的需要是唯一的 -你应该尝试更换所有元素id="filename"class="filename"代替,然后替换#filename.filename在你的each()功能,因此它类似于以下内容:

$(".filename").each(function()  {
    $(this).html("ext!");
});
Run Code Online (Sandbox Code Playgroud)