首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >事件,当(内部) html更改时

事件,当(内部) html更改时
EN

Stack Overflow用户
提问于 2011-07-21 17:34:36
回答 3查看 3.5K关注 0票数 3

当一个元素的innerHTML因为"ajaxing“而改变的时候,我想捕捉这个事件。

我的意思是这样的:

代码语言:javascript
复制
$('.t_error span').html.change(function(){
... 
});

感谢您的帮助!

EN

Stack Overflow用户

回答已采纳

发布于 2011-07-21 17:39:46

没有办法做你要求的事情--但是,你可以使用下面的结构:

代码语言:javascript
复制
 $.ajax({
   type: "GET",
   url: yourUrl:,
   success: function (data) {
       ajaxComplete();
   }
 });

代码语言:javascript
复制
 function ajaxComplete()
 { 
    ....
 }

编辑:如果你想更聪明,你可以使用Custom Events

基本上定义一个CustomEvent函数:

代码语言:javascript
复制
var CustomEvent = function() {
  //name of the event
  this.eventName = arguments[0];
  var mEventName = this.eventName;

  //function to call on event fire
  var eventAction = null;

  //subscribe a function to the event
  this.subscribe = function(fn) {
    eventAction = fn;
  };

  //fire the event
  this.fire = function(sender, eventArgs) {
    this.eventName = eventName2;
    if(eventAction != null) {
        eventAction(sender, eventArgs);
    }
    else {
        alert('There was no function subscribed to the ' + mEventName + ' event!');
    }
  };
};

然后,您只需要在某个位置创建CustomEvent类的一个实例:

代码语言:javascript
复制
 var myEvent = new CustomEvent("my event");

在您的页面中,订阅它:

代码语言:javascript
复制
 myEvent.subscribe(function(sender, eventArgs) {
    alert(eventArgs.message);
 });

并在Ajax调用成功函数中触发它:

代码语言:javascript
复制
$.ajax({
   type: "GET",
   url: yourUrl:,
   success: function (data) {
       myEvent.fire(null, {message: 'you just witnessed the firing of a custom event called ' + this.eventName + '!'});
   }
});
票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6774043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档