[英]JQuery getJSON in MVC
我有以下JSon調用,我想在Controller中調用一個方法並接受JSon對象以更新Partial View:
<script type="text/javascript">
function DoAjaxUpdate(btnClicked) {
btnClicked = $(btnClicked);
var $form = btnClicked.parents('form');
var url = '@Url.Action("Remove")';
$.getJSON(
url,
$form.serialize(),
function () {
if (data.htmlPartialView != null) {
return $("#divPartialView").load(obj.htmlPartialView);
}
});
return false;
}
</script>
不幸的是,這不能正確地傳遞數據,而是將其作為查詢字符串附加到URL,例如: http ://www.myLink.com/MyController/Remove?dataID=1359&dataMember =1
請幫忙。 謝謝
這是什么情況$("form").serialize()
它將序列化形式的一切,並把它的查詢字符串。
只要你的Remove
操作方法采用打開原始視圖模型的實例,那么它將在查詢字符串中使用的值轉化。
為了將其作為JSON,你不得不使用JSON.stringify()
JSON.stringify($form.serialize())
回調需要參數,如下所示:
$.getJSON(
url,
$form.serialize(),
function (obj) {
if (obj.htmlPartialView) {
$("#divPartialView").load(obj.htmlPartialView);
}
});
順便說一下, 如果(obj.htmlPartialView)是相同的,以IF(data.htmlPartialView!= NULL)
您正在調用getJSON
,它將使用getJSON
將數據作為GET請求發送。 如果要使用POST方法,請使用(來自jQuery網站):
$.post(url, data, function(data) {
});
要么
$.ajax({
type: "POST",
url: url,
data: data,
success: success,
dataType: dataType
});
詳細信息: http : //api.jquery.com/jQuery.post/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.