【发布时间】:2016-07-29 13:48:29
【问题描述】:
我使用 ASP.NET MVC 和 Jquery。我有图标,当我点击它时会显示对话框。
Reports.cshtml:
<a class="dialog-opener" href="#">
<input type="hidden" name="reportID" value="@view.ReportCode"/>
<i class="material-icons right">more_vert</i>
</a>
在这个对话框中,我的表单是局部视图 SubscriptionForm.cshtml:
<div id="dialog-modal" title="Basic model dialog">
@using (Html.BeginForm("SubscriptionForm", "Subscription", FormMethod.Get)) {
@Html.AntiForgeryToken()
...
</div>
_LayoutForAll.chhtml:
$(function () {
$('#dialog-modal').dialog({
dialogClass: 'ui-dialog-osx',
autoOpen: false,
width: 800,
title:"Formularz subskrypcji",
show: {
duration: 1000
},
hide: {
duration: 1000
}
});
$('.dialog-opener').click(function () {
var reportId = $("[type=hidden]").val();
$("#dialog-modal").dialog("open");
alert(reportId);
});
});
我需要将 Reports.cshtml 中的 reportId 和表单 SubscriptionForm 中的日期发送到我的控制器,我现在不知道该怎么做。
【问题讨论】:
-
使用
<a class="dialog-opener" href="#" data-id="@view.ReportCode">并移除隐藏的输入。然后在表单中添加一个隐藏的输入 -<input type="hidden" name="reportID" id="reportID" />并使用$('.dialog-opener').click(function () { $('#reportID').val($(this).data('id'); $("#dialog-modal").dialog("open");});
标签: javascript jquery asp.net asp.net-mvc asp.net-mvc-4