Javascript MVC表单提交上的弹出消息
我在MVC中有一个名为Index的视图,它在focusout事件上有一个输入文本,它呈现一个具有表单的局部视图。从局部视图提交表单后,我想显示一个成功或失败的弹出消息Javascript MVC表单提交上的弹出消息,javascript,jquery,asp.net-mvc,forms,bootstrap-modal,Javascript,Jquery,Asp.net Mvc,Forms,Bootstrap Modal,我在MVC中有一个名为Index的视图,它在focusout事件上有一个输入文本,它呈现一个具有表单的局部视图。从局部视图提交表单后,我想显示一个成功或失败的弹出消息 **Index.cshtml** @Html.Label("inp") @Html.TextBox("inp", new { @class = "form-control input-sm", id = "inp" }) <div id=partial_1></div&g
**Index.cshtml**
@Html.Label("inp")
@Html.TextBox("inp", new { @class = "form-control input-sm", id = "inp" })
<div id=partial_1></div>
<div id="modal-container" class="modal fade" tabindex="-1" role="dialog">
<div class="modal-content">
</div>
</div>
<script type="text/javascript">
$("document").ready(function ()
{
$(document).on('focusout', 'input:text[id="imp"]', function (event) {
$.ajax({
url: '@Url.Action("GetPartial1", "Controller")',
type: 'get',
async: false,
data: { inp: $("#inp").val()},
success: function (resp) {
$('#partial_1').html(resp);
},
error: function (resp) {
}
});
});
</script>
我的观点如下
**Controller.cs**
public ActionResult GetPartial1(string inp)
{
var model=getModel(inp);
return PartialView("_Partial1", model);
}
public ActionResult save(Model form){
return PartialView("_Partial2");
}
**_partial1.cshtml**
@using (Html.BeginForm("save", "Controller"))
{
<div class="form-group">
@Html.LabelFor(modelval => modelval.Title)
@Html.TextBoxFor(modelval => modelval.Title)
<button type="submit" class="btn btn-primary pull-right" data-toggle="modal" data-target="#modal-container">Save</button>
</div>
}
**_partical2.cshtml**
<div class="modal-body">
<p>massage</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
**\u partial1.cshtml**
@使用(Html.BeginForm(“保存”、“控制器”))
{
@LabelFor(modelval=>modelval.Title)
@Html.TextBoxFor(modelval=>modelval.Title)
拯救
}
我的观点如下
**Controller.cs**
public ActionResult GetPartial1(string inp)
{
var model=getModel(inp);
return PartialView("_Partial1", model);
}
public ActionResult save(Model form){
return PartialView("_Partial2");
}
**_partial1.cshtml**
@using (Html.BeginForm("save", "Controller"))
{
<div class="form-group">
@Html.LabelFor(modelval => modelval.Title)
@Html.TextBoxFor(modelval => modelval.Title)
<button type="submit" class="btn btn-primary pull-right" data-toggle="modal" data-target="#modal-container">Save</button>
</div>
}
**_partical2.cshtml**
<div class="modal-body">
<p>massage</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
**\u partial2.cshtml**
按摩
接近
问题在于,模态并不是只加载局部视图。当我使用action link时,模态显示完美,但我无法通过action link传递razor表单。我的目标是当表单提交时,它将显示一条没有重定向的警报消息。我该怎么做呢?你能试试这个吗。这对我有用。帖子很长,所以你可以拿出你需要的来解决你的问题 视图: _共享中的Parital1.cshtml:
@model Testy20161006.Controllers.PopupViewModel
@*I am using HomeController, you can use ControllerController if you want*@
@using (Html.BeginForm("save", "Home"))
{
<div class="form-group">
@Html.LabelFor(modelval => modelval.Title)
@Html.TextBoxFor(modelval => modelval.Title)
@Html.TextBoxFor(modelval => modelval.inp)
<button type="submit" class="btn btn-primary pull-right">
Save
</button>
</div>
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(function () {
$("#modal-container").modal('show');
})
</script>
<div id="modal-container" class="modal fade" tabindex="-1" role="dialog">
<div class="modal-content">
<div class="modal-body">
<p>@ViewBag.message</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
<div>
@*IndexStackOverflow100, you can use a different page*@
@Html.ActionLink("return", "IndexStackOverflow100")
</div>
@model testy2016 1006.Controllers.PopupViewModel
@*我使用的是HomeController,如果需要,您可以使用ControllerController*@
@使用(Html.BeginForm(“保存”、“主页”))
{
@LabelFor(modelval=>modelval.Title)
@Html.TextBoxFor(modelval=>modelval.Title)
@Html.TextBoxFor(modelval=>modelval.inp)
拯救
}
_共享中的Partial2.cshtml:
@model Testy20161006.Controllers.PopupViewModel
@*I am using HomeController, you can use ControllerController if you want*@
@using (Html.BeginForm("save", "Home"))
{
<div class="form-group">
@Html.LabelFor(modelval => modelval.Title)
@Html.TextBoxFor(modelval => modelval.Title)
@Html.TextBoxFor(modelval => modelval.inp)
<button type="submit" class="btn btn-primary pull-right">
Save
</button>
</div>
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(function () {
$("#modal-container").modal('show');
})
</script>
<div id="modal-container" class="modal fade" tabindex="-1" role="dialog">
<div class="modal-content">
<div class="modal-body">
<p>@ViewBag.message</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
<div>
@*IndexStackOverflow100, you can use a different page*@
@Html.ActionLink("return", "IndexStackOverflow100")
</div>
$(函数(){
$(“#模态容器”).modal('show');
})
@ViewBag.message
接近
@*IndexStackOverflow100,您可以使用其他页面*@
@ActionLink(“return”、“IndexStackOverflow100”)