1

「よろしいですか」ポップアップ ウィンドウを削除ボタンに追加する必要がありますが、ユーザーが [OK] または [キャンセル] をクリックしたかどうかを取得する方法がわかりません。

これが私がそれを行う方法です:

string message = "Are you sure you want to delete this user?";
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            sb.Append("return confirm('");
            sb.Append(message);
            sb.Append("');");
            Type type = this.GetType();
            ClientScript.RegisterOnSubmitStatement(type, "alert", sb.ToString());
4

4 に答える 4

5

ボタンのOnClientClickを次のように設定できます。

return confirm("Are you sure you want to delete this user?");

その場合、ユーザーが[OK]をクリックしないと、送信/ポストバックは発生しません。

于 2012-06-02T15:45:12.697 に答える
2

<input type="button|submit|reset" />最も簡単な方法は、これをまたはhtml マークアップに追加することです<button />(キャンセル時に送信しません)。OnClick="if(!confirm('Are you sure?')) return false;"

イベントの名前をOnClientClickforに変更します。html マークアップで and/or のに追加されるため、and/or と<asp:Button />互換性があります。CausesValidation="True"UseSubmitBehavior="False"

于 2012-06-02T14:59:36.180 に答える
1

ajax コントロール ツールキットを使用している場合は、confirmextender を使用してください

ユーザーがクリックしたボタンを知りたい場合は、これを試してください

ウェブフォームに隠しフィールドを追加する

これを使用して、ユーザーが[OK]をクリックしたときに値を設定します

  sb.Append("if (confirm(").Append(msg).Append("))")
                .Append("document.getElementById('")
                .Append(confirmResult.ClientID)
                .Append("').value = 'ok';");

コードビハインドでconfirmResultの値を読んで、ユーザーが[OK]または[キャンセル]をクリックしたかどうかを確認します

于 2012-06-02T15:08:22.650 に答える
0

上記の回答に同意しますが、サーバー側とクライアント側のコード/イベントを混在させたくない場合は、AjaxToolKit 確認ボタンhttp://bit.ly/NtmpOTを使用することをお勧めします

于 2012-06-02T20:46:48.590 に答える