jQuery动态插入的元素,怎么响应静态默认的处理方法
jQuery动态插入的元素,如何响应静态默认的处理方法?
页面载入时的默认处理如下:
A1:
$("body").on("click", "a[disabled]", function() {
return false;
});
A2:
$("select").css("min-width", function() {
return $(this).width() + 4;
});
以上A1使用了委托事件,所以当ajax动态插入内容后,可以正确响应;
现在问题是A2由于非事件,所以没办法响应到默认处理。
由于类似A2的处理事项较多,对于ajax返回的数据,如果每次都额外重复A2-AN的操作会很繁琐,请问有没有较好的方法,类似事件委托一样,可以对后期动态加入的元素也能响应处理呢?
------解决方案--------------------
拿到ajax 渲染页面dom的时候 处理一下 a2-an 怎么看 也只有写一次代码
不知道为什么繁琐
所谓响应 是指 你的代码的响应
你的 a1 表示你的代码响应了 click事件
但是 并不是说我们的代码只能响应 页面的原生事件
因为最终是 我们的代码在控制页面 并不是 页面在控制代码
你描述的业务逻辑来看 你的元素的显示 是动态插入
那么 这个动态插入 就是一个 响应点 这个点 执行你的 a2+ 操作 和click事件执行 你的a1操作 没什么区别
不要觉得 click事件 只执行了一次绑定 就不繁琐了
页面载入时的默认处理如下:
A1:
$("body").on("click", "a[disabled]", function() {
return false;
});
A2:
$("select").css("min-width", function() {
return $(this).width() + 4;
});
以上A1使用了委托事件,所以当ajax动态插入内容后,可以正确响应;
现在问题是A2由于非事件,所以没办法响应到默认处理。
由于类似A2的处理事项较多,对于ajax返回的数据,如果每次都额外重复A2-AN的操作会很繁琐,请问有没有较好的方法,类似事件委托一样,可以对后期动态加入的元素也能响应处理呢?
------解决方案--------------------
拿到ajax 渲染页面dom的时候 处理一下 a2-an 怎么看 也只有写一次代码
不知道为什么繁琐
所谓响应 是指 你的代码的响应
你的 a1 表示你的代码响应了 click事件
但是 并不是说我们的代码只能响应 页面的原生事件
因为最终是 我们的代码在控制页面 并不是 页面在控制代码
你描述的业务逻辑来看 你的元素的显示 是动态插入
那么 这个动态插入 就是一个 响应点 这个点 执行你的 a2+ 操作 和click事件执行 你的a1操作 没什么区别
不要觉得 click事件 只执行了一次绑定 就不繁琐了