42

有没有办法change通过 jQuery 的trigger方法将数据传递给事件?

这里的问题是一个click事件触发了上传菜单。但是,一旦选择了图像,change就会触发该事件。我传入触发事件的第二个参数的数据是传给click事件,而不是传给change事件。在下面的示例中,data未定义。

触发图像更改

$('.change_main_image').live('click', function() {
    $('input[name=photo].change_uploader').trigger('click', ["some string"]);
});

事件处理程序

$('input[name=photo].change_uploader').live('change', function (e, data) {
   alert(data); // undefined
   //canvas resize and upload script
});
4

1 回答 1

89

.live()已弃用。像这样使用.on()change应该触发事件,而不是click

$('.change_main_image').on('click', function() {
    $('input[name=photo].change_uploader').trigger('change', [{somedata:true}]);
});


$('input[name=photo].change_uploader').on('change', function (e, data) {
   alert(data.somedata); 
   //canvas resize and upload script
});
于 2012-11-22T05:20:23.280 回答