0

我在使用 jConfirm 确认是否应该更改节点时遇到问题。

这是我的 js 代码:

function OnClientNodeClicking(sender, args) {                                        

   var calcelTrue = confirm('Can you confirm this?')
   if (calcelTrue == false) 
   {
      args.set_cancel(true);
      return true;
   }                           

}                  

它工作正常。但现在我想使用 jConfirm。并且程序不想等待我单击确定或取消(它只是触发事件)。所以我试图停止该事件,如果我单击“确定”,那么单击节点的事件应该从 js 再次触发。

function OnClientNodeClicking(sender, args) {                                        

   var node = args.get_node();

   jConfirm('Can you confirm this?', 'Confirmation Dialog', function (r) {

          if (r){

                * Fire the event of clicking  
          }
   });

   args.set_cancel(true);                              

        }                  
   } 

如何从 js 触发事件,或者如何防止 jConfirm 等待我选择然后触发事件。

4

2 回答 2

0

我通过在单击 Ok 时使​​用链接按钮回发来解决这个问题,然后在触发事件 changeNode() 后面的代码中解决这个问题。

Javascript:

    var node = args.get_node();

     jConfirm('Can you confirm this?', 'Confirmation Dialog', function (r) {
     if (r) { // Ok clicked
          node.set_selected(true);
          __doPostBack('<%= this.LinkButton5.UniqueID %>', '');
          return true;
     }
    });

args.set_cancel(true);  // Cancell the event

后面的代码:

protected void bChangeNode(object sender, EventArgs e)
 {
     rtvNode_Click(rtvMeni.SelectedNode.Text, rtvMeni.SelectedNode.Value);
 }
于 2012-08-30T13:30:39.570 回答
0

试过这个?

function OnClientNodeClicking(sender, args) {    
  jConfirm('Can you confirm this?', 'Confirmation Dialog', function (ans) 
  {                 
       if (!ans)                     
       args.set_cancel(true);             
  }); 
}
于 2012-08-30T09:19:31.223 回答