我正在创建一个MVC3应用程序,我在其中使用bootstrap文件。 我正在尝试在引导模式中打开AddEmployee.cshtml视图(当前正在打开)以添加新的员工记录。
我面临的问题是,当我创建一个简单的空白模态时,它会正确打开但是当我试图在模态中加载我上面提到的剃刀视图时,该模态不起作用。 我想在每个页面上链接(点击哪个模式应该打开),这就是为什么我在_Layout.cshtml中有这个链接。
我粘贴下面的代码作为参考。
1)_Layout.cshtml
<body>
<div class="container">
<div class="row" id="sidebar">
@Html.Partial("_sidebar") //This has the link
</div>
<div class="row">
<div id="content">
@RenderBody()
</div>
</div>
</div>
</body>
2)_sidebar.cshtml: -
<div class="col-xs-4" style="text-align: right;">
<a style="cursor: pointer;" href="../Home/AddEmployee" data-toggle="modal" id="btnCreate">
<input type="image" src="../../Images/addnewfinal.png" alt="Add New Allocation" id="btnAddNewAllocation" /><span id="spanAddNewEmployee">Add New Employee</span>
</a>
</div>
3)控制器动作: -
public class HomeController : Controller
{
[HttpGet]
public ActionResult AddEmployee()
{
.....
return View();
}
}
4)AddEmployee.cshtml(我希望以模态显示): -
<div class="modal fade" id="addNew" aria-labelledby="#myLabel" aria-hidden="true" tabindex="-1" role="dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">
×
</button>
<h4 class="modal-title" id="myLabel">Add New Employee
</h4>
</div>
@using (Html.BeginForm("AddEmployee", "Home", FormMethod.Post, new { @id = "testForm" }))
{
<div class="modal-body">
<div>
@Html.EditorFor(x => x.ListOfEmployees)
</div>
</div>
<div class="modal-footer">
<button type="button" data-dismiss="modal" class="btn btn-default">
Close
</button>
<button type="submit" class="btn btn-primary">
Submit
</button>
</div>
}
</div>
</div>
5)EditorFor模板(Employee.cshtml): -
<div class="form-group" id="div1">
@Html.TextBoxFor(model => model.Id, new { @placeholder = "Id", @class = "form-control", id="userId", name = "userId", onblur="Showavailability()"})
<span class="help-inline">@Html.ValidationMessageFor(model => model.Id)</span>
</div>
<div class="form-group">
@Html.TextBoxFor(model => model.Name, new { @placeholder = "Name", @class = "form-control", name = "userName" })
<span class="help-inline">@Html.ValidationMessageFor(model => model.Name)</span>
</div>
当我点击_sidebar.cshtml中的链接时,控制进入控制器操作而不是Employee.cshtml,但是模态没有创建,我得到的只是褪色屏幕。
他们的任何Javascript是否也需要为此编写? 请帮我解决这个问题。 提前谢谢。
答案 0 :(得分:0)
首先,您需要将AddEmployee.cshtml呈现为部分,以便它显示在您的页面中。其次,我不相信你可以同时拥有href="../Home/AddEmployee"
和data-toggle="modal"
....我的猜测是你要打开这个模式来要求确认然后创建它。如果是这样,您还必须为按钮(链接)设置模态目标。