在事件处理中,是否可以将其传递给另一个函数?

时间:2016-04-19 13:21:50

标签: jquery

单击“删除超链接”时,将打开“确认弹出窗口”,允许用户做出决定。

如果用户点击是,是否可以将引用传递给 yesclick 事件?

http://jsfiddle.net/2EL5R/151/

简单来说,我的问题是,在yesclick事件处理程序中可以使用

var trtext = $(this).closest('tr').text();??

这是我的代码

$('.delete').on('click', function() {
    //var trtext = $(this).closest('tr').text();
    $("#itemdelpopup").popup("open");
});
$(document).on('click', '#yesclick', function(event) {
    alert('clciked on yes');

    //var trtext = $(this).closest('tr').text();

    $("#itemdelpopup").popup("close");
});
$(document).on('click', '#noclick', function(event) {
    $("#itemdelpopup").popup("close");
});

例如我已经粘贴了一个示例代码,但在我的应用程序中我使用$(this)做了很多东西,所以不想打扰功能

1 个答案:

答案 0 :(得分:2)

我建议只使用变量跟踪这样的行:

var targetRow;

$('.delete').on('click', function() {
  //var trtext = $(this).closest('tr').text();
  $("#itemdelpopup").popup("open");
  targetRow = $(this).closest('tr');
});
$(document).on('click', '#yesclick', function(event) {
  alert('clciked on yes');
  targetRow.remove();
  //var trtext = $(this).closest('tr').text();

  $("#itemdelpopup").popup("close");
});
$(document).on('click', '#noclick', function(event) {
  $("#itemdelpopup").popup("close");
});

<强> jsFiddle example