0
/* listen for the submit button press */

YAHOO.util.Event.addListener(webserver.result_form, 'submit', webserver.result_submit);

我的main.js. YUI 中有什么方法可以让我监听一个变量,所以当这个变量发生变化时,事件就会发生。我想知道是否有类似的东西:

YAHOO.util."Variable".addListener(webserver.result_form, 'submit', webserver.result_submit);
4

1 回答 1

0

您不能直接将侦听器分配给 javascript 变量,但可以通过以下方式间接执行。

您可以将变量的值保存在 div 或任何 html 节点中

例如

<div id="variable-name" style="display:none;">variable-value</div>

或者

<span id="variable-name" style="display:none;">variable-value</span>

然后使用下面的js来监控节点的任何变化。这将适用于 YUI3 或更高版本。(我不确定 YUI2.x)

var Y = YUI().use('node', 'event', function (Y) {
    // node and event modules are loaded.
});    
var demo = Y.one('#variable-name');
    // And we can listen for DOM events.
        demo.on('change', function (e) {
            alert('value changed');
        });

有关监听 YUI 节点事件的更多信息

http://yuilibrary.com/yui/docs/event/#listening-for-events

和可用的事件列表

http://yuilibrary.com/yui/docs/event/#event-whitelist




编辑


基于http://www.quirksmode.org/dom/events/change.html

更改事件仅在其表单字段时触发

例如input textareaselect

所以当 div 的内容发生变化时不会触发 change 事件。

于 2012-06-29T16:28:17.317 回答