0

我不太确定该怎么做,但这里是:

我有触发功能的表单元素(主要用于验证目的)。这会在点击、更改等时触发。这些都是用 vanilla JavaScript 编写的。

如果它是一个简单的 HTML 元素,那么一切正常。例如,一个元素在变化时触发。

但是,如果我使用 jQuery 脚本(例如 jQuery 颜色选择器),那么尽管该 jQuery 脚本填充了一个字段,但验证脚本不会触发。

我想这很明显,因为您不单击、模糊、更改它,它只是更改它的 jQuery 脚本。

当然,我可以更改颜色选择器 jQuery 脚本中的 JavaScript,这样它也会触发验证脚本,但必须有更好的方法,以及点击、更改、模糊等。我也可以在它激活时激活该功能发现另一个脚本正在更改它。我需要这个用于各种场合和脚本。

另一个示例是评分脚本(评分为 5)。它使用单选按钮作为非 jQuery 后备,而 jQuery 脚本只是隐藏这些单选(使用 CSS),显示星形图像,然后在用户与星形图像交互时更改单选。这样,无论 jQuery 是否可用,服务器都会以相同的方式处理表单提交。但是,验证脚本不会触发。

有任何想法吗?

4

1 回答 1

0

显然,在 javascript 运行之后,元素被插入到 dom 上。尝试使用 $.live() 而不是 $.blur()

所以即使这个脚本元素是在页面渲染之后插入的,事件也会被绑定到 em。

http://api.jquery.com/live/

于 2013-01-30T20:03:41.583 回答