gpt4 book ai didi

javascript - IE 的非冒泡提交事件的解决方法

转载 作者:搜寻专家 更新时间:2023-11-01 05:18:55 25 4
gpt4 key购买 nike

我正在开发一个包含大量 AJAX 的大型 Web 应用程序,其事件处理已失控。我正在尝试设置一个 event delegation系统来管理所有这些,但我想知道是否有针对 IE 的非冒泡表单提交的解决方法(有很多表单通过 AJAX 插入/更新)。我想出的最好的事情是每次我从 AJAX 调用获得响应时执行一些 javascript 来重新加载提交处理程序,但这看起来很丑陋。有什么想法吗?

此外,对于哪些事件在不同版本的 IE 中无法正确传播,是否有人提供了很好的引用?我很难找到有用的信息(尽管 this other question 有一点)。


该网站的一个真实示例:对某些用户内容进行就地编辑。在进行事件委托(delegate)时,我会让主体监听提交事件,然后查看触发事件的元素并相应地进行处理。由于提交不会在 IE 中冒泡,因此这是行不通的。 5 美元的解决方案是为所有其他事件进行事件委托(delegate),并在 Prototype 中使用类似这样的方法处理提交:

// call this onload:
$$('form').invoke('observe', 'submit', function(event) { /*delegate*/ });

但这不适用于动态创建的表单(如上所述,我必须每次都重新实例化处理程序),如果我可以“制作”表单提交气泡,整个事情会更好在 IE 中,到处都做简单的委托(delegate)(没有特殊情况等)。

最佳答案

您能否使表单返回 false 并只查找提交按钮上的 CLICK 事件而不是表单提交事件?然后通过 AJAX 调用以编程方式提交表单。

关于javascript - IE 的非冒泡提交事件的解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/361073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com