質問編集履歴

5

コードの編集

2022/01/19 01:41

投稿

kentasuzuki_
kentasuzuki_

スコア28

test CHANGED
File without changes
test CHANGED
@@ -12,9 +12,11 @@
12
12
 
13
13
  <asp:LinkButton ID="DemandLinkButton" runat="server" Text ="申請" OnClick="DemandLinkButton_Click" />
14
14
 
15
+ <script type="text/javascript">
15
16
  function TotalMoneyCheck() {
16
17
  return confirm("金額が違いますが、このまま申請してもよろしいですか?");
17
18
  }
19
+ </script>
18
20
 
19
21
  test.aspx.csファイル内のコード
20
22
  ///申請ボタンクリック時処理

4

コードの修正

2022/01/19 01:30

投稿

kentasuzuki_
kentasuzuki_

スコア28

test CHANGED
File without changes
test CHANGED
@@ -10,7 +10,7 @@
10
10
  ```ここに言語を入力
11
11
  test.aspxファイル内のコード
12
12
 
13
- <asp:LinkButton id="DemandLinkButton" runat="server" onclick="DemandLinkButton_Click;"/>
13
+ <asp:LinkButton ID="DemandLinkButton" runat="server" Text ="申請" OnClick="DemandLinkButton_Click" />
14
14
 
15
15
  function TotalMoneyCheck() {
16
16
  return confirm("金額が違いますが、このまま申請してもよろしいですか?");

3

タイトルの変更

2022/01/19 00:49

投稿

kentasuzuki_
kentasuzuki_

スコア28

test CHANGED
@@ -1 +1 @@
1
- クライアント側で確認ダイアログのキャンセルを押下した際に処理を止めたい
1
+ クライアント側で確認ダイアログのキャンセルを押下した際にサーバーサイド側の処理を止めたい
test CHANGED
@@ -2,7 +2,7 @@
2
2
  どなたか教えていただければ幸いです。
3
3
 
4
4
 
5
- LinkButtonのDemandLinkButton_Clickのイベントを発生した時のお話ですが、
5
+ サーバーサイド側でLinkButtonのDemandLinkButton_Clickのイベントを発生した時のお話ですが、
6
6
  confirmで確認ダイアログのキャンセルを押下した際に処理を止めたいのですが、
7
7
  下記のような方法ですと、DemandLinkButton_Clickのイベントが最後まで走ってしまいます。
8
8
  どなたか教えていただければ幸いです。

2

タイトルの変更

2022/01/19 00:48

投稿

kentasuzuki_
kentasuzuki_

スコア28

test CHANGED
@@ -1 +1 @@
1
- サーバーサ側でJS動かしたい
1
+ クラアント側で確認ダイアログのキャンセル押下した際に処理を止めた
test CHANGED
File without changes

1

文言を大幅に変更させていただきました。

2022/01/19 00:33

投稿

kentasuzuki_
kentasuzuki_

スコア28

test CHANGED
File without changes
test CHANGED
@@ -1,20 +1,37 @@
1
- aspx.csファイル内でJavaScriptを動かしてみたいのですが、やり方が分からないので、
1
+ aspxファイル内でJavaScriptを動かしてみたいのですが、思ってた動きと違うので、
2
- 教えていただければ幸いです。
2
+ どなたか教えていただければ幸いです。
3
3
 
4
4
 
5
- aspxファイル内に下記のようなサンプルコードを入れてテストしたところ、
6
- onclick="MoveCheck();の値が入っているLinkButtonをクリックると
5
+ LinkButtonのDemandLinkButton_Clickのイベント発生した時のお話で
6
+ confirmで確認ダイアログのキャンセルを押下した際に処理を止めたいのですが、
7
- ブラウザ側(クライアントサイド)で、MoveCheck() 関数処理が走っていることを確認できています。
7
+ 下記のような方法すとDemandLinkButton_Clickのイベント最後まで走ってしまいます。
8
-
9
- これをサーバーサイド側(aspx.cs)で同じような処理をしたい時は、どのようにすれば良いのか分かりません。
10
8
  どなたか教えていただければ幸いです。
11
9
 
12
10
  ```ここに言語を入力
13
- <asp:LinkButton id="test" runat="server" onclick="MoveCheck();"/>
11
+ test.aspxファイル内のコード
14
12
 
13
+ <asp:LinkButton id="DemandLinkButton" runat="server" onclick="DemandLinkButton_Click;"/>
14
+
15
- function MoveCheck() {
15
+ function TotalMoneyCheck() {
16
- return confirm("test");
16
+ return confirm("金額が違いますが、このまま申請してもよろしいですか?");
17
17
  }
18
+
19
+ test.aspx.csファイル内のコード
20
+ ///申請ボタンクリック時処理
21
+ protected void DemandLinkButton_Click(object sender, EventArgs e)
22
+ {
23
+ if (MoneyTextBox.Text != RecalcMoney())
24
+ {
25
+ // Scriptを登録し、aspx側に記載しているTotalMoneyCheck()関数を呼ぶ
26
+ ScriptManager.RegisterStartupScript(this, this.GetType(), "TotalMoney", "TotalMoneyCheck();", true);
27
+ }
28
+  // 画面遷移
29
+  Response.Redirect("https://teratail.com/");
30
+ }
31
+
32
+ 補足ですが、ここではMoneyTextBox.Textの値は100とします。
33
+ RecalcMoney()の戻り値は200とします。
34
+
18
35
 
19
36
  ```
20
37