2012-01-26 8 views
0

は、私は最近、同様の質問をしていないんインターセプトがボタンを押して削除 - 確認にキャンセルすることは何も

I want to "intercept" a delete button press

を基本的に私は、削除ボタンを押しを傍受しようとしています。 confirm("Are you sure?")onclick=に入れて確認することができますが、私が選択したものでもOKでもキャンセルしても、削除をクリックしたアイテムは削除されます。

どうすればよいですか?キャンセルをクリックすると、アイテムを削除しないように、私はそれを作るにはどうすればよい

'<td><button type="submit" name="del" onclick="confirm(\'Are you sure?\')" value=' . stripslashes($servrow["serv_id"]) . '>Del</button></td> 

私のコードは次のようになります!

(誰も私に知らせて、ちょうどHTMLの中に散在してPHPを変換するために私を必要とする場合、私は私の問題の理解を高めるために、させていただきます)

答えて

0

確認ダイアログは、に応じて、値を返します。ボタンがクリックされました(「OK」または「キャンセル」)。

現在のところ、確認ダイアログが表示され、どのボタンがクリックされたかに関係なく、フォームのsubmitアクションが完了しています(これはアイテムを削除しようとしています)。

あなたがそう、関数にonclick機能を配置する必要がありますsubmitアクションが完了することができますtrueを返し

var c = confirm('Are you sure?'); 
if(c==true) { 
    return true; 
} else { 
    return false; 
} 

<button type="submit" name="del" onclick="return confirmDelete();" value=' . stripslashes($servrow["serv_id"]) . '>Del</button> 

confirmDelete()関数は次のようになります。 falseを返すと、それが完了しなくなります(もう一度、フォームが送信されたときにのみ削除が処理されると仮定しています)。

+0

私はこのための関数を記述する必要があるかもしれないと考えていました。簡単な方法があるかどうか疑問に思っていただけです。ありがとう! –

+0

Hrm、Netbeansは私にここで "無効な戻り値"を与えます –

+0

私はばかだ、完全に機能のロジックをラップするのを忘れてしまった。 –

0
<td><button type="submit" name="del" onclick="if !confirm(\'Are you sure?\') return false;" value=' . stripslashes($servrow["serv_id"]) . '>Del</button> 
関連する問題