記事詳細
- 投稿日
- 2026年08月11日18時14分
-
タイトル
-
ASP.NET Core MVC: Viewの” <select asp-for="PaymentTypeId" class ="form-control" asp-items="ViewBag.PaymentTypeId"></select>”のリストのvalueはTypeIdですが表示データ(TypeName)を登録前に取得する方法を教えてください。
- 内容
-
なるほど、
<select asp-for="PaymentTypeId" asp-items="ViewBag.PaymentTypeId">の場合、valueはTypeIdですが、登録前に選択されたTypeNameを取得したいということですね。ASP.NET Core MVC では、サーバー側でも**クライアント側(JavaScript)**でも取得可能です。
以下に両方の方法を示します。1. クライアント側(JavaScriptで取得)
登録(POST)前にブラウザで選択中の表示テキスト(
TypeName)を取得できます。これで、フォーム送信前に
TypeNameを取得して別の hidden フィールドに入れることも可能です。2. サーバー側(Controllerで取得)
フォーム送信時に
PaymentTypeIdしか送られませんが、DBやリストからTypeNameを引けます。3. Hiddenフィールドで一緒に送信する方法
JavaScriptで選択時に
TypeNameを hidden にセットして送信する方法です。Controller 側では
PaymentTypeNameも受け取れます。✅ まとめ
- 画面上で即取得 → JavaScriptで
selectedIndexの.textを取る - サーバーで取得 →
PaymentTypeIdからDBやリストでTypeNameを引く - 両方送信 → hidden フィールドにセットしてPOST
もし「登録前に画面上で TypeName を別の項目に表示したい」なら、
JavaScriptでの方法(1)が一番シンプルです。必要であれば、選択したTypeNameを即座に別の入力欄やラベルに反映するサンプルも作れますが、それも載せますか?
そうすれば登録前にユーザーにも確認できます。Powered by Froala Editor
- 画面上で即取得 → JavaScriptで
-
添付画像
-
画像はありません
- Genreのカテゴリ-名
- Views