0

我的问题与我正在对其运行确认的页面动态应用元素有关。代码正确定位元素并询问确认部分,但问题是如果我选择是,我不知道返回值隐藏在哪里,它没有像我下面的想法那样在类中设置,也没有返回值各种各样的。

任何人都知道如何从要删除的元素的确认中获得某种形式的返回值?

    $('.deleteMe').live('click', function() {

        confirmFunction(this);
        if ($(this).hasClass('confirm')){ alert("yea");} else {alert("no");}
    });

    function confirmFunction(element) {
        $(element).confirm({
          msg:'Confirm Action!<br />',
          stopAfter:'ok',
          eventType:'click',
          timeout:5000,
          buttons: { ok:'Yes', cancel:'No', separator:' - '}
        });
    }
4

1 回答 1

1

根据我对插件页面示例的理解,应该是这样的:

分配确认成功时应该运行的点击处理程序,然后分配确认插件。

 $('.deleteMe').live('click',function() {
    // Code here for when they click YES on the confirm box.
    // This only executes in 2 scenarios, either the item was clicked
    //   and the confirm plugin was not active, or it was active and
    //   the user selected Yes.
 });

 function updateConfirms() {
    $('.deleteMe').confirm({
      msg:'Confirm Action!<br />',
      stopAfter:'ok',
      eventType:'click',
      timeout:5000,
      buttons: { ok:'Yes', cancel:'No', separator:' - '}
    });
 }

 updateConfirms();

由于您提到的动态性质,您需要在添加需要确认的新元素后调用 updateConfirms() 。

编辑:让我们尝试不使用 Live,并在添加任何内容后刷新点击处理程序和确认:

 function updateConfirms() {
   $('.deleteMe').click(function() {
    // Code here for when they click YES on the confirm box.
    // This only executes in 2 scenarios, either the item was clicked
    //   and the confirm plugin was not active, or it was active and
    //   the user selected Yes.
   });

   $('.deleteMe').confirm({
     msg:'Confirm Action!<br />',
     stopAfter:'ok',
     eventType:'click',
     timeout:5000,
     buttons: { ok:'Yes', cancel:'No', separator:' - '}
   });
 }

 updateConfirms();
于 2011-06-07T20:20:42.167 回答