如何使用on()将元素的ID和字符串传递给我的函数?

时间:2012-08-14 17:07:34

标签: javascript jquery asp.net .net javascript-events

OnChangeListener必须接受触发它的元素ID,并且还必须传入一个字符串(将被硬编码)。这不起作用,因为我已经知道e实际上是事件,而不是select元素。但是,我不知道如何以这种方式检索ID。此脚本应该将此事件处理程序附加到符合选择器条件的所有选择元素。

$(document).on('change', '[data-controltype=dropdown]', function (e) {
    OnChangeListener($(e).attr('id'), 'Dashboard.aspx/GetFilterDataCallBack');
});

我也试过这个:

$(document).on('change', {senderId:$(this).attr('id'), callBack:'Dashboard.aspx/GetFilterDataCallBack' }, '[data-controltype=dropdown]', OnChangeListener});

这似乎也不起作用。

修改:这是我网页上的<script>标记。

提前致谢。

1 个答案:

答案 0 :(得分:2)

$(document).on('change', '[data-controltype=dropdown]', function (e) { OnChangeListener($(e).attr('id'), 'Dashboard.aspx/GetFilterDataCallBack'); }); e指的是事件。要获取触发元素,请使用

$(document).on('change', '[data-controltype=dropdown]', function (e) {
    OnChangeListener(this.id, 'Dashboard.aspx/GetFilterDataCallBack');
});