私はMVCを使用しています。インデックスビューでは、データ入力用に「EditorFor」フィールドと「DropDownFor」フィールドを配置しています。私は値を入力して、ビューからレコードを保存するようにしたいと思います。しかし、私は入力されたデータを取得する際に問題が発生しています。私はActionResultを作成してデータをバインドしようとしましたが、何も出ません。フィールドのID名を与えてパラメータとして渡してみましたが、何も渡されません。MVCビューからのフィールドデータの保存
これは私が私の見解で持っているものである -
<h3>Sensitive Areas</h3>
@Html.HiddenFor(model => model.BurnSitesID, new { @id = "burnSitesID"})
<div class="form-group">
@Html.LabelFor(model => model.SensitiveTypesID, "Sensitive Area", new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownList("SensitiveTypesID", string.Empty)
@Html.ValidationMessageFor(model => model.SensitiveTypesID, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.DistSensitiveArea, new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.DistSensitiveArea, new { @id = "distSensitiveArea" })
@Html.ValidationMessageFor(model => model.DistSensitiveArea, "", new { @class = "text-danger" })
</div>
<input type="submit" id="CreateArea" value="Save"/>
どのように入力された値を取り、コントローラに渡すのでしょうか?私はボタンを試しましたが、私のボタンの名前がビューとまったく同じでない場合は、何もしません。
はフォーム内の入力要素ですか?フォームを提出したときに何が起こっていますか?フォーム送信を処理するアクションメソッドはどのように見えますか? – Shyju
BeginFormヘルパーを使用するか、HTMLフォーム要素でフォームをラップする必要があります。 Ajaxを使用している場合、おそらくあなたのJSコードを表示する必要があります。 – Mark
私は 'using(Html.BeginForm()) 'を追加しましたが、それでも値は持ちません。フォームを送信すると、フィールドが空であるように動作します。それは次のActionResultを使用しています - 'public ActionResult Save([Bind(Include =" SensitiveAreasID、DistSensitiveArea、BurnSitesID、SensitiveTypesID ")] BurnSiteSensitiveAreaIndexData burnSiteSensitiveAreaIndexData)' –