【问题标题】:Does replacing the content of a span raise an event?替换跨度的内容会引发事件吗?
【发布时间】:2011-10-13 11:17:50
【问题描述】:

如果我使用以下语法替换 span 的内容,它会引发事件吗?:

$("#container").html(data);

每当#container 的内容发生变化时,我都会尝试刷新另一个div,但我不知道要绑定哪个#container 事件。我正在使用 jQuery。

感谢任何帮助。

更新:这是更全面的代码清单...

$.post(addUri, myForm.serialize(), function(data) {
       $("#container").html(data);
   }, 'html');

【问题讨论】:

  • 为什么每次在#container 中插入东西都不能刷新div? #container 是否被外部脚本变异了?
  • 我更新了更全面的代码清单。基本上,如果我在发布后调用我的刷新功能,则跨度没有时间更新。我可以使帖子同步,但我真的不想这样做......

标签: jquery


【解决方案1】:

我认为跨度中的内容更改没有内置监听器,因此您可以创建自己的:

$('#container').bind('contentchanged', function() {
  alert('the content of my container changed!');
});

并像这样触发它:

$("#container").html(data).trigger('contentchanged');

【讨论】:

    【解决方案2】:

    您可以使用.trigger() 触发自定义事件并使用.bind() 进行监听。

    【讨论】:

      【解决方案3】:

      jQuery 不提供跟踪内容更改的功能。有人写了一个插件来做你在这个问题的答案中需要做的事情-jQuery watch div

      【讨论】:

        猜你喜欢
        • 2018-09-15
        • 1970-01-01
        • 1970-01-01
        • 2012-10-28
        • 1970-01-01
        • 1970-01-01
        • 2021-06-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多