jquery .text()更新"来源"但不是DOM

时间:2015-05-26 04:52:51

标签: javascript jquery ajax

这是我的jquery场景:

  1. 用户点击div
  2. 它会触发ajax调用以在DB上保存一些数据
  3. 收到回电时,我们会显示更新消息< - 一切都很好 直到这里
  4. 现在,当用户点击同一元素时,它会显示信息 从数据库中,其他div也一样!
  5. 注意到,当您单击时,您之后保存的相同文本将显示在所有div中!它并不令人耳目一新,但实际来源却显示出来 变化!

    看起来只有DOM没有反映出这些变化!

    我试图使用.text();

    将文本放入div中

    所有div都使用相同的元素ID!我只是更新它的数据!

    谢谢,

1 个答案:

答案 0 :(得分:1)

All the divs are using the same element id! - 永远不应该有两个元素具有相同的ID,因为它违反了构建HTML和第三方库所依赖的原则。

如果您需要定位多个元素,请使用

如果您的元素具有类yourClass并且您想要将它们设置为文本" foo",那么

var yourResponseText = "foo";
$('.yourClass').text(yourResponseText);

特别是如果你使用jQuery - ID选择器是以这种方式实现的,当它找到具有该ID的元素时它不会寻找另一个 - 这些设置只会影响第一个(从DOM的角度来看) )元素。另一方面,当您使用班级选择器时,只需说您正在通过该班级的元素循环 forEach