在elselect下拉变化上调用ajax函数

时间:2012-07-03 09:46:00

标签: javascript mootools

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

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

提前致谢

1 个答案:

答案 0 :(得分:2)

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

我对mootools的工作原理并不熟悉,但我注意到插件的源代码中它定义了几个事件处理程序,其中包括onOptionClick。每次用户单击下拉列表中的选项时,都会触发此操作。你可以捎带它 - 改变该函数中的代码也可以触发你的ajax请求。

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