我有以下标记和代码。
查看:
@model WealthRef.Models.ViewModels
<td style="width: 100px;color:black" id="tdfromDatevalue">
if (Model != null)
{
@Html.DropDownListFor(model => Model.DropDownModels.FromDateModels.SelectedNode,
new SelectList(Model.DropDownModels.FromDateModels.FromDateValues,
"Code", "CodeDescription"),
new { id = "ddlFromDateValues",
@class = "chosen-select",
data_placeholder = "Select Date...",
style = "white-space:nowrap;width:100px;" })
@Html.HiddenFor(model => Model.FromDate, new { id = "hdnFromDate" })
}
</td>
<script type="text/javascript" language="javascript">
$("#ddlFromDateValues").on("change", function () {
var fromDate = $(this).val();
$("#ddlFromDateValues").val(fromDate).trigger("chosen:updated");
$("#hdnFromDate").val(fromDate);
});
</script>
<td>
<a class="btn" href="@Url.Action("ExportToExcel", "WealthRef")" id="btnRun"
style="color:White" onclick="return Validate();">Run</a>
</td>
<script>
$(document).ready(function () {
load();
});
function load() {
$("#hdnFromDate").val($("#ddlFromDateValues").find("option:selected").val());
}
</script>
型号:
namespace WealthRef.Models
{
public class ViewModels
{
public string FromDate { get; set; }
}
}
控制器:
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult ExportToExcel(ViewModels model)
{
string FromDate = model.FromDate;
}
我期望从隐藏字段中获取
FromDate
,该字段来自于@Html.DropDownListFor
中选定的项目,但我得到了空。
请帮忙!
谢谢!
以下代码有效。
查看:
<td style="width:80px; color:black; padding-right: 20px; " id="tdfromDatevalue">
@if (Model != null)
{
@Html.DropDownListFor(model => Model.DropDownModels.FromDateModels.SelectedNode, new SelectList(Model.DropDownModels.FromDateModels.FromDateValues, "Code", "CodeDescription"), new { id = "ddlFromDateValues", @class = "chosen-select", data_placeholder = "Select Date...", style = "white-space:nowrap;width:100px;" })
}
</td>
<td>
<form action="@Url.Action("ExportToExcel", "WealthRef")" method="post">
@Html.HiddenFor(model => Model.GenericModels.fromDate, new { id = "hdnFromDate" })
<input type="submit" value="Run" class="btn" style="color:White; font-size:13px; padding:6px 24px;" onclick="return Validate();" />
</form>
</td>
<script>
$(document).ready(function () {
var fromDate = $("#ddlFromDateValues").val();
$("#hdnFromDate").val(fromDate);
$("#ddlFromDateValues").val(fromDate).trigger("chosen:updated");
});
</script>
型号:
namespace WealthRef.Models
{
public class ViewModels
{
public GenericModel GenericModels { get; set; }
}
public class GenericModel
{
public string fromDate { get; set; }
}
}
控制器:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult ExportToExcel(ViewModels model)
{
string FromDate = model.GenericModels.fromDate;
}