@ken1753

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

scriptタグで宣言した変数を、Razor構文を使用してcshtmlで記述する方法

解決したいこと

scriptタグで宣言した変数を、Razor構文を使用してcshtmlで記述する方法が知りたいです。

以下のように記述したのですが、scriptタグ内で宣言した変数を、c#コード内で使用しようとすると「現在のコンテキストに'selectedValue'という名前は存在しません」とエラーが出てしまいます。
どうすれば良いでしょうか。よろしくお願いします
以下、コード

@{
int num=selectedValue;
}

0 likes

3Answer

Comments

  1. 質問者は回答欄に書かないようお願いします。質問と回答がゴッチャになって訳が分からなくなりますので。

開発環境を質問欄を編集して追記してください。(例: Windows 10 の Visual Studio 2022 で ASP.NET Core MVC アプリをターゲットフレームワーク .NET 6.0 で作っています・・・とか)

もう一つ、あなたの書いた cshtml のコードを質問欄にアップしてください。不完全でも構いません。それを見るとあなたが何をしたいのか分かるかもしれませんので。

【追記】

質問者さん、無言ですが、まだ解決したいという意思があるなら聞かれたことに答えてはいかがですか? もうギブアップしたとかで Q&A を続ける必要がないのならその旨書いてクローズしてください。

Q&A を続けるならそもそも何がしたいのか書いてください。

普通、ASP.NET Web アプリで「scriptタグで宣言した変数を、Razor構文を使用してcshtmlで記述する」ということは考えもしないので XY 問題のような気がします。

ちなみに、XY 問題とは、質問者に X という課題があって、質問者が Y という解決策を考えついて Y について質問したが(質問には X は書かないで)、Y は X の解決策とはなっておらず、回答者と質問者間で話がかみ合わず、一向に解決にならないということです。

だから、上の私のレスで、

あなたの書いた cshtml のコードを質問欄にアップしてください。不完全でも構いません。それを見るとあなたが何をしたいのか分かるかもしれませんので。

と書いたのです。それができないなら、せめて X を、ここに書いてないこと以外は知り得ない他人が読んでわかる言葉で、文書化して説明してください。

そうしてもらえれば、Y は不可能なのでできないけど、X はこうすれば実現できるというような回答が出てくるかもしれません。

0Like

以下のように記述したのですが、scriptタグ内で宣言した変数を、c#コード内で使用しようとすると

基本的にJavaScriptはクライアントのブラウザにロードされるまで解釈されないため,ASP.NETのようにバックエンドから変数を読み取ることはできません.(これは基本的に逆も然りです)
よって,ASP.NETサーバーとJavaScriptとで情報をやり取りしたい場合,必然的にクライアントとサーバーの通信が必要になります.これをどのような方式で行うかは,ページの設計を含めて多岐にわたるため割愛しますが,一例としてとりあえずは以下を参照してみてください.

0Like

Comments

  1. コードの添付について補足ですが,QiitaはMarkdownをサポートしていますので,Codeblocksを使用して貼り付けてください.

Your answer might help someone💌