2013-04-29 27 views
5

私はangle-jを使用している間にphonegapのnotification.confirmを呼び出しています。notification.girmというコールバック関数が常に呼び出される

私は、コードを持っている:私はfunc2のは、ユーザーが確認ボックスの確認ボタンを押したときにのみ呼び出されるようにしたい

ng-click= func(item) 

$scope.func = function(item) { 
navigator.notification.confirm('Delete?', func2(item)); 
} 

function func2 (item) { 
console.log("Ohk call"); 
} 

。しかし、何が起こるかは、通知がボタンのクリックなしで表示されるとすぐに呼び出されるということです。 解決方法

+0

ng-clickで正確なHTML部分を入力してください。 – Yaroslav

答えて

8

はそれに正しいANSある:

$scope.func= function (item) { 
     navigator.notification.confirm('Delete?', function(button) { 
      if (button == 1) { 
       func2(item); 
      } 
     }); 
    }; 

ボタンの値がボタンのうち基準として1/2であり、「CONFIRM」/「キャンセル」をクリックします。私の場合、「確認」ボタンには1の値があり、等価チェックが行われます。

2

これは、すでにfunc内で関数func2を呼び出すためです。あなたはそれを呼び出すことはありませ、引数として関数を渡す必要があります。

$scope.func = function(item) { 
    navigator.notification.confirm('Delete?', function() { 
     func2(item) 
    }); 
} 

あなたが通知を確認するときに、関数にのみ呼び出されますこの方法です。ここ

+0

作業の驚異! :)ありがとうございます。 –

+0

ちょっとこれはうまくいきません...キャンセルボタンをクリックしても関数func2が呼び出されます –

+0

あなたの新しいコードを見せてください! –

関連する問題