如果父控件被启用/禁用,如何启用/禁用动态创建的自定义控件(查看原始控件)

How to enable/disable a custom control created on the fly (seeing the original control) if parent control is enabled/disabled

本文关键字:启用 控件 创建 动态 自定义控件 原始 禁用 何启用 如果      更新时间:2023-09-26

我在我的应用程序的许多地方有一个HTML <select>,我想用一个自定义下拉菜单替换它。我已经创建了自定义控件,它将替换DOM上的HTML <select>

现在,我想实现一些东西,将禁用/重新启用我的新控件,如果有一个Javascript禁用/启用原始控件,而不做任何改变在应用程序的其他地方,除了在控制。

如何捕获HTML选择控件被禁用或启用并附加一些代码的事件?还有别的办法吗?

更新:我可以在IE7, Safari/Chrome中使用这个东西,但它的在mozilla中不起作用。示例代码在这里http://jsfiddle.net/M73Wg/3/

这是一个棘手的问题。不幸的是(我相信)没有直接的答案。它归结为:是的,你可以这样做,通过使用JavaScripts DOMAttrModified事件监听器,但它不是跨浏览器兼容。

这里有一些资源可以帮助你:

  • 使用jQuery检测属性变化(可能的解决方案)
  • 有可能在JavaScript中侦听对象属性的变化吗?
  • 监听jQuery中checked/disabled的变化

最后使用超时只http://jsfiddle.net/8EtJK/6/

DOMAttrModified在mozilla中不工作

问候,SJ