我有一種表格,其中一個下拉串列處于禁用狀態,如下所示:
<div class="form-group">
<label asp-for="ItemEditModel.ProjectJobId" class="form-label required"></label>
<div class="form-group">
<select class="form-control" asp-for="ItemEditModel.ProjectJobId"
asp-items="Model.ProjectJobList" disabled></select>
</div>
<span class="text-danger" asp-validation-for="ItemEditModel.ProjectJobId"></span>
</div>
現在,當我們提交表單時,該欄位的值不會出現,因為它處于禁用狀態。
知道如何在提交表單時獲取此欄位值。
uj5u.com熱心網友回復:
使用只讀屬性而不是禁用
uj5u.com熱心網友回復:
您可以嘗試使用路由引數:
<form method="post" asp-route-ItemEditModel.ProjectJobId=@Model.ItemEditModel.ProjectJobId>
...
</form>
或者您可以嘗試disabled在提交表單之前洗掉:
<form id="myForm" method="post">
<div class="form-group">
<label asp-for="ItemEditModel.ProjectJobId" class="form-label required"></label>
<div class="form-group">
<select class="form-control" asp-for="ItemEditModel.ProjectJobId"
asp-items="Model.ProjectJobList" disabled></select>
</div>
<span class="text-danger" asp-validation-for="ItemEditModel.ProjectJobId"></span>
</div>
<input type="submit" value="submit"/>
</form>
<script>
$('#myForm').submit(function () {
$("#ItemEditModel_ProjectJobId").removeAttr("disabled");
return true; // return false to cancel form action
});
</script>
或者您可以添加一個隱藏的輸入到 bind ItemEditModel.ProjectJobId:
<form method="post">
<input hidden asp-for="ItemEditModel.ProjectJobId" />
...
</form>
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/401959.html
