ドロップダウンで調整を選択すると、値を取得できますが、正しいフォームをレンダリングすると、フォームのドロップダウン UI に正しい値がありません。ほとんど動作しますが、jquery を正しく実行していないと感じています。ビューには 2 つの異なるフォームがあり、Jquery を使用して、ドロップダウン選択に基づいて表示するフォームを選択します。
JQUERYはこちら
$(document).ready(function() {
$("#adjustments").hide();
$(".TypeClass").change(function() {
var selected = $(".TypeClass option:selected").text();
alert(selected);
if (selected == "Received") {
$("#received").show();
$("#adjustments").hide();
}
if (selected == "Adjustment") {
$("#adjustments").show();
$("#received").hide();
}
});
$(".TypeClass2").change(function() {
var selected = $(".TypeClass2 option:selected").text();
alert(selected);
if (selected == "Received") {
$("#received").show();
$("#adjustments").hide();
}
if (selected == "Adjustment") {
$("#adjustments").show();
$("#received").hide();
}
});
});
HERES THE VIEW
<div id="received">
<fieldset>
<legend>New Inventory Transaction</legend>
<table>
<tr><td>@Html.LabelFor(model => model.ItemName)</td><td>@Html.DisplayFor(model => model.ItemName)</td></tr>
<tr><td>@Html.LabelFor(model => model.ItemNumber)</td><td>@Html.DisplayFor(model => model.ItemNumber)</td></tr>
<tr><td>@Html.LabelFor(model => model.XactTypeId)</td><td>@Html.DropDownListFor(model => model.XactTypeId, (SelectList)ViewData["InvType"], "Choose Type", new { @class = "TypeClass" })</td></tr>
<tr><td>@Html.LabelFor(model => model.XactTotalCost)</td><td>@Html.EditorFor(model => model.XactTotalCost)</td></tr>
<tr><td></td><td><p> <input type="submit" value="Create" /></p></td></tr>
</table>
</fieldset>
</div>
<div id="adjustments">
<fieldset>
<legend>New Inventory Transaction</legend>
<table>
<tr><td>@Html.LabelFor(model => model.ItemName)</td><td>@Html.DisplayFor(model => model.ItemName)</td></tr>
<tr><td>@Html.LabelFor(model => model.ItemNumber)</td><td>@Html.DisplayFor(model => model.ItemNumber)</td></tr>
<tr><td>@Html.LabelFor(model => model.WharehouseName)</td><td>@Html.EditorFor(model => model.WharehouseName)</td></tr>
<tr><td></td><td><p> <input type="submit" value="Create" /></p></td></tr>
</table>
</fieldset>
</div>