所以我之前使用过这个,但这是一个链接,点击链接后会出现这种情况
Ajax.ActionLink("XXX", "UpdateGridView", new { }, new AjaxOptions { UpdateTargetId = "configs"})
);
我想要的是JS中的函数做同样的事情,调用Action
并给出UpdateTargetId
,它将使用Action
重新呈现该部分视图。
有可能吗?
谢谢
编辑:
$.ajax({
type: "POST",
url: "AddUpdateConfigs",
data: ({id: @Model.QueueMonitorConfigurationsID, pathType: $('#ddlConfigTypeName').val(), threshold:$('#ddlThreshold').val(), valueType:$('#ddlValueTypeName').val(), location: $('#txtbLocation').val(), limit: $('#txtbLimit').val(), config: $('#NewOrUpdate').val() }),
dataType: 'application/json',
statusCode: {
404: function(){
alert("Data is duplicated");
},
405:function(){
alert("Location Path is not correct");
},
406: function(){
alert("Location Path has to be UNC path");
},
407: function(error){
alert(error);
},
410:function(result){
alert("Item added correctly");
$('#gridView').load('gvConfigurations');
},
411:function(result){
alert("Item updated correctly");
}
}
});
所以我的代码有效,但当我的Action返回代码410时,我想调用Action
并更新gridView gvConfigurations
答案 0 :(得分:1)
您可以使用$.ajax()
功能:
$.ajax({
url: '/SomeController/UpdateGridView',
type: 'GET',
success: function(result) {
$('#configs').html(result);
}
});
或$.get()
等价物:
$.get('/SomeController/UpdateGridView', function(result) {
$('#configs').html(result);
});
或使用load()
的更短的等效内容:
$('#configs').load('/SomeController/UpdateGridView');
这3个jQuery片段都是这样做的:它们向/SomeController/UpdateGridView
发送一个AJAX请求,并使用id="configs"
更新DOM元素,并返回此AJAX调用返回的部分结果。