所以我在主视图中有2 partial views
:gridView
和roundPanel
。
因此,当点击Gridview
行中的“修改”按钮时,roundPannel
应该使用行的信息进行更新。
我的编辑按钮:
Ajax.ActionLink("Edit", "EditConfig", new { id = DataBinder.Eval(c.DataItem, "QueueMonitorConfigurationsID") }, new AjaxOptions { UpdateTargetId = "configs" })
它所调用的功能:
[HttpGet]
public ActionResult EditConfig(int id)
{
StorageConfigurationModel resultForPanel = new StorageConfigurationModel { };
IEnumerable<StorageConfigurationModel> configList = (IEnumerable<StorageConfigurationModel>)Session["ConfigurationList"];
foreach (StorageConfigurationModel configModel in configList)
{
if (configModel.QueueMonitorConfigurationsID == id)
{
resultForPanel = configModel;
break;
}
}
return PartialView("cbpnlNewUpdateConfigs", resultForPanel);
}
每次点击“修改”时,我都会打开一个新视图,当我只想刷新roundPanel
(partialview
)时。
答案 0 :(得分:3)
我通过ajax调用打电话给我的控制器
$.ajax({
url: "@(Url.Action("Action", "Controller"))",
type: "POST",
cache: false,
async: true,
data: { data1: 'data1' },
success: function (result) {
$(".Content").html(result);
}
});
这样做我用控制器返回的局部视图替换div的内容。我不知道它是否会有所作为,但我的部分视图的方法我返回PartialViewResult而不是ActionResult。希望这会有所帮助。