0

我正在使用elSelect和 mootools 来更改选择框的外观。我的问题是在选择框值更改时如何调用Ajax函数?

<script type="text/javascript">
    window.addEvent('domready', function() {
        var mySelect = new elSelect( {container : 'someId'} );
    });
</script>

提前致谢

4

1 回答 1

2

由于 elSelect 更改了 HTML 结构以替换下拉菜单,因此您不能使用change在原始下拉菜单上设置的事件。该文档没有显示将事件绑定到替换下拉列表的任何方法。

我完全不熟悉 mootools 的工作方式,但我注意到在插件的源代码中它定义了几个事件处理程序,其中onOptionClick. 每次用户单击下拉列表中的选项时都会触发此事件。您可以搭载它 - 更改该函数中的代码以触发您的 ajax 请求。

另一种选择是分析注入元素的 HTML 结构——你可以从你给构造函数的 id 开始并在其中查找.option元素。您可以让他们以固定的时间间隔(使用setInterval)轮询它们的更改,并在您看到值已更改时发送 ajax 请求。或者,您可以将点击处理程序添加到每个选项并从那里获取。

于 2012-07-03T10:02:43.250 回答