3

WinForms では、次のことができます。

var msg = MessageBox.Show("Are you sure?", "WARNING!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);

if (msg == DialogResult.Yes)
{
    //do something
}

ASP .NET/C# で上記を模倣するにはどうすればよいですか?

4

8 に答える 8

2

短い答えは、あなたができないということです。その理由は、サーバーで実行するコードがクライアントに直接マップされないためです。したがって、ユーザーからの応答を取得するためにサーバー上で使用できるインタラクティブなメッセージ ボックスを作成することはできません。

できることは、クライアント側の jquery を使用して、その応答に基づいて新しい要求を発行することです。ただし、メソッドを完全に終了させて​​から、まったく新しい要求に基づいてアクションを実行する必要があるため、これは WindowsForms で MessageBox を使用することと同じではありません。

于 2012-10-04T22:11:12.563 に答える
1

JQueryモーダルダイアログはいつでも使用できます。

ダイアログの定義:

<div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-draggable ui-resizable">
   <div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix">
      <span id="ui-dialog-title-dialog" class="ui-dialog-title">Dialog title</span>
      <a class="ui-dialog-titlebar-close ui-corner-all" href="#"><span class="ui-icon ui-icon-closethick">close</span></a>
   </div>
   <div style="height: 200px; min-height: 109px; width: auto;" class="ui-dialog-content ui-widget-content" id="dialog">
      <p>Dialog content goes here.</p>
   </div>
</div>

ダイアログを開く(単なる例):

$(foo).dialog({ autoOpen: false })
于 2012-10-04T22:07:09.540 に答える
1

サーバー側からダイアログを表示することはできません。これはJavaScriptを使用して行います。スタイルを設定したい場合は、jQueryのダイアログを使用することをお勧めします

于 2012-10-04T22:08:53.267 に答える
1

asp:LinkBut​​ton を使用している場合

<asp:LinkButton id="btnSubmit" runat="server" OnClick="btnSubmit_Click" />

コードビハインド:

public void Page_Load(object sender, EventArgs e)
{
    this.btnSubmit.Attributes.Add("onclick", "javascript: return confirm('Are you sure?');");
}

public void btnSubmit_Click(object sender, EventArgs e)
{
    //Run code. User already confirmed to get here.
}
于 2012-10-04T23:30:02.277 に答える
1

このjqueryプラグインを使用できます

于 2012-10-04T22:17:50.357 に答える
0

これは、ダイアログ メッセージを表示する方法の基本的な例です。

Page.RegisterStartupScript("UserMsg", "<script>alert('this is my message :) !');</script>");
于 2015-10-08T21:28:33.263 に答える
0

ASP.NET AJAX を使用して実現できます

http://www.asp.net/ajaxlibrary/act_ConfirmButton.ashx

于 2012-10-04T22:14:19.157 に答える