我有一个像下面这样的区域。
以下是Controller操作。
[HttpGet]
public ActionResult Index_partial()
{
return PartialView("_PartialPage1");
}
[HttpGet]
public ActionResult Index()
{
AdminModule model = new AdminModule();
model.MyName = "My Name";
return View("Index", model);
}
查看
@model _1.Areas.Admin.Models.AdminModule
@{
ViewBag.Title = "Index";
Layout = "~/Areas/Admin/Views/Shared/_LayoutPage1.cshtml";
}
<h2>
Index</h2>
<script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript">
</script>
<script type="text/javascript" src="/scripts/jquery.unobtrusive-ajax.js">
</script>
<div id="myForm">
@using (Html.BeginForm())
{
<p id="pid">
</p>
<input onclick="ClickHere();" type="submit" value="Button" />
}
<script language="javascript" type="text/javascript">
function ClickHere() {
debugger;
var url = '@Url.Action("Index_partial", "Admin")';
$('#p').load("@Url.Action("Index_partial", "Admin")");
}
</script>
</div>
===================================
部分视图
@model _1.Areas.Admin.Models.AdminModule
@using (Ajax.BeginForm("Index", "Admin",
new AjaxOptions { UpdateTargetId = "myForm", HttpMethod = "Post" }))
{
@Html.LabelFor(i => i.MyName)
@Html.TextBoxFor(i => i.MyName)
@Html.ValidationMessageFor(i => i.MyName)
<p id="getDateTimeString">
</p>
<input type="submit" value="Click here" id="btn" />
}
=====================================
在视图中,我有一个按钮,点击它时应该在
中渲染部分视图<p id="pid"></p>
问题是 - 点击按钮将页面导航到部分视图,它应该在p标签中呈现部分视图Html。怎么做?
答案 0 :(得分:2)
@using (Html.BeginForm())
< input onclick="ClickHere();" type="submit" id="Button" value="Button" />
$('#Button').click(function(){
debugger;
var url = '@Url.Action("Index_partial", "Admin")';
$('#p').load("@Url.Action("Index_partial", "Admin")");
}
return PartialView("_PartialPage1");
答案 1 :(得分:1)
删除@using (Html.BeginForm())
并添加以下HTML:
<p id="pid"></p>
<button type="button" id="mybtn">Load partial view</button>
然后,添加一点jQuery:
(function() {
$('#mybtn').click(function() {
$.ajax({
url: '@Url.Action("Index_partial", "Admin")',
type: 'GET',
cache: false,
success: function(result) {
$('#pid').empty().html(result);
}
});
});
});
答案 2 :(得分:0)
控制器:
[HttpGet]
public ActionResult Index_partial()
{
return PartialView("_PartialPage1");
}
在view / javascript中。
<script language="javascript" type="text/javascript">
function ClickHere() {
$.ajax({
url: "@Url.Action(MVC.Admin.Index_partial())",
async: false,
data: { },
success: function(data) {
$("#pid").empty();
$("#pid").html(data);
}
});
}
</script>
我使用T4MVC生成网址。
希望这有帮助。
答案 3 :(得分:0)
家庭控制器:
[HttpGet]
public ActionResult PartialView()
{
return this.PartialView("PartialView");
}
查看
<script type="text/javascript">
$(document).ready(function () {
$("#btnSubmit").click(function() {
$("#renderedHtml").load('Home/PartialView');
});
});
</script>
<div id="renderedHtml"></div>
<input type="submit" value="Get Partial" id="btnSubmit" />
答案 4 :(得分:0)
查看应该是这样的......
<div id="myForm">
<p id="pid">
</p>
</div>
<input id="BTN" type="submit" value="Button" />
<script language="javascript" type="text/javascript">
$('#BTN').click(function(){
$('#pid').load("@Url.Action("Index_partial", "Admin")");
});
</script>