ページ:
<body>
<form id="frmLogin" runat="server">
<asp:Button ID="btnClick" OnClientClick="openConfirmDialog();" OnClick="PopulateLabel" runat="server"/>
<div id="divDialog"></div>
<asp:Label ID="lblText" runat="server"></asp:Label>
</form>
</body>
JS
<script type="text/javascript">
$(document).ready(function() {
$("#divDialog").dialog({autoOpen: false,
buttons: { "Ok": function()
{
$(this).dialog("close");
},
"Cancel": function()
{
$(this).dialog("close");
}
}
});
});
function openConfirmDialog()
{
$("#divDialog").dialog("open");
}
C#
protected void Page_Load(object sender, EventArgs e)
{
lblText.Text = "";
}
protected void PopulateLabel(object sender, EventArgs e)
{
lblText.Text = "Hello";
}
このコードは、[OK]と[キャンセル]ボタンのあるダイアログボックスを開きますが、ユーザーアクティビティを待たずにページをすぐに投稿すると、ラベルが表示されます。ユーザーアクティビティに基づいてc#関数を呼び出す必要があります。ユーザーが[OK]をクリックすると、ラベルが表示され、[キャンセル]をクリックすると、c#関数は呼び出されません。どうすればこれを達成できますか?