我正在创建一个asp.mvc 4应用程序。我有一个场景,我有一个绑定到模型的MVC页面。在同一页面中,我有一个网格来添加“区域”。
现在我需要选项来创建“区域”:当用户点击按钮(“btncreatearea”)时,将打开另一个页面,其中将包含“区域”详细信息,并且在提交时它将被重定向回原始页面。
我还希望在用户点击从其他页面添加区域之前,在原始页面上输入信息。
我尝试使用下面的脚本调用另一个页面,但这不能正常工作 - 它永远不会打开页面,而且我在模型中没有得到任何值。
打包视图
@model iSPYCMS.Models.iSPYPack
@using (Html.BeginForm(null, null, FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<div style="text-align:right; padding-top:10px">
<button type="submit" class="btn btn-success">Save</button>
@Html.ActionLink("Cancel", "Index", "Packs", null, new { @class = "btn btn-danger" })
</div>
<div class="form-group">
@Html.LabelFor(x => x.Name)
@Html.TextBoxFor(x => x.Name, new { @class = "form-control", @maxlength = 100 })
</div>
<div class="form-group">
@Html.LabelFor(x => x.Description)
@Html.TextBoxFor(x => x.Description, new { @class = "form-control", @maxlength = 250 })
</div>
<div class="alert alert-success">
<strong>Add/Remove Area From this Pack</strong> Changes will takes place when save button is pressed!
</div>
<div class="panel-body">
<div class="container-fluid">
<button id="btnaddArea" class="btn btn-xs btn-primary">Add Area</button>
<button id="btncreatearea">Create Area</button>
<hr/>
<table id="grdareas" class="table table-striped table-bordered table-responsive table-condensed table-hover">
<thead>
<tr>
<th>OrderIndex</th>
<th>Area Id</th>
<th>Name</th>
<th>ImageId</th>
<th></th>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
</div>
}
脚本
$("#btncreatearea").click(function () {
var pack = @Html.Raw(Json.Encode(Model))
$.ajax({
type: 'POST',
data: JSON.stringify({ pack: pack }),
url: '@Url.Action("CreateFromPack", "Area")',
dataType: 'json',
contentType: 'application/json',
success: function (result) {
}
});
});