3

私は次のようなJSメソッドを持っています:(100%正しいかどうかはわかりません)

<script Type="Text/Javascript">

if (confirm("Are you SUre ?")) {
  return true;
} else {
  return false;
}

</script>

そして、いくつか疑問があります:

最初: という名前のフォルダJS があり、そこに配置する予定です。これは正しいですか?

2番目: 私はこれをEditページで使用します。そのため、顧客clickがボタンを押したときに、このようなメッセージと「はい/いいえ」ボタンのeditようなメッセージでこの確認を希望します。では、どうすればいいですか?顧客がクリックした瞬間にこのメソッドを呼び出すにはどうすればよいですか?"Are you Sure?clicksYesedit on databaseImageButton

もう 1 つ: このメソッドの戻り値を取得し、C# を使用して aspx.cs で操作するにはどうすればよいですか?

以下のコードを試しましたが、うまくいきませんでした =\ ポップアップが表示されますが、クリックcancelしてもOnClickメソッドに移動します

<asp:ImageButton ID="Btn_Alterar" runat="server" ImageUrl="~/Imgs/btAlterar.jpg" OnClick="Btn_Alterar_Click" OnClientClick="confirm()" />
4

2 に答える 2

3

これはうまくいくはずです。質問がポップアップ表示され、「はい」と答えた場合は、サーバー側のコードを処理します (例として)。

JS:

<script language="javascript">
<!--
function doConfirm() {
    if (confirm("Are you SUre ?")) {
      //Person has said Yes, do your thing. Next line will allow the server side code to be processed
      return true
    } else {
      //User said No, do nothing and leave next line so the function call exits. 
      return false
    }
}
-->
</script>

ASP.NET コントロール:

<asp:ImageButton id="bMyButton" runat="server" onClientClick="doConfirm()" OnClick="DoServerSideCode" />

.CS

protected void DoServerSideCode(object sender, EventArgs e)
{
    //This will be called if JS is disabled OR the user clicks Yes. If the user clicks No then this won't be called. You can do DB logix here.
}

編集:(@justnSに感謝)

別の実装は次のとおりです。

ASP.NET コントロール:

<asp:ImageButton id="bMyButton" runat="server" onClientClick="return confirm('Are you sure?')" OnClick="DoServerSideCode" />

上記は前の実装とまったく同じですが、必要なコードが少なくなり、インラインで実行されます。

于 2013-01-22T13:28:20.033 に答える
0
$('#mylink').click(function(e){ e.preventDefault(); //DB で何かを削除するアクションがありますか? ここに移動します.. }

もちろん、jQuery が必要です。

于 2013-01-22T13:55:48.043 に答える