アプリケーションのパスワードをリセットする機能を実行しています。私のパスワード回復ページには、ユーザーの電子メール ID を入力できるテキスト ボックス、[パスワードを送信] ボタンがあり、パスワードを回復する方法を選択するオプションも用意されています。 2 つ目は、一連の質問に答える方法です。
そのため、ID、ユーザー名、パスワードの列を持つモデル UserTable を使用して、MVC アプリケーションでビューを作成しています。また、パスワード回復オプションは、「PASSWORD_RECOVERY_OPTIONS」という名前のテーブルから取得されます。したがって、このテーブルからすべての値を取得し、各オプションのラジオボタンとして表示して、ユーザーが希望を選択できるようにすることを計画しています。ラジオボタンの値をバインドするには、コントローラーで次のことを行いました
public ActionResult ForgotPassword_Get()
{
List<OptionToRecoverPassowrd> GtPassObj = EMContextObj.OptionToRecoverPassowrds.ToList();
ViewBag.Options = GtPassObj;
return View();
}
私の見解は次のようになります:
@model EmployeeManagementDAL.User_Table
@using (Html.BeginForm())
{
<table>
<tr>
<td>username:</td>
<td>@Html.TextBoxFor(x => x.username)
</td>
</tr>
<tr>
@foreach (var a in ViewBag.Options)
{
@Html.RadioButton("Options",true) @a.GetPasswordThrough
}
</tr>
<tr>
<td>
<input type="submit" value="Send Password" /></td>
</tr>
</table>
}
これで、UI レンダリングを正しく取得できるようになりました。ボタン 選択したもののIDを知るにはどうすればよいですか? 私のコントローラーで。ビューの作成に使用されるモデルは、ユーザー テーブルとは何の関係もありません。
私からしてみれば:
@foreach (var a in ViewBag.Options)
{
@Html.RadioButton("Options", new { selectedid=a.id}) @a.GetPasswordThrough
}
私のコントローラーで私はこのように与えました
string inss = FormObj["options"];
デバッグすると、値が次のように表示されました{ selectedid = 2 }
正確な値を取得する方法。