我想要做的是創建一個可以從所有不同視圖使用的gui對象。這個想法是通過將組件放入佔位符div來將組件作爲主視圖的局部視圖添加。MVC 6使用ajax將模型從視圖傳遞到控制器到局部視圖
這裏是我的模型
public class Client
{
public int clientid { get; set; }
public string clientname { get; set; }
}
,我使用插入組件的Java腳本... 理想我寧願通過直接調用只需使用傳遞給該視圖的模型數據它,但不工作這就是爲什麼我一直在用下面的VAR模型的故障排除......
var model = {
clientid: 23,
clientname: "This one"
};
$.ajax({
type: "POST",
data: JSON.stringify(model),
url: "../shared/ClientProgramSelector",
contentType: "application/json"
}).done(function(result) {
$("#clientProgramSelectorPlaceholder").html(result);
});
所調用的控制器是這裏
[HttpPost]
public PartialViewResult ClientProgramSelector([FromBody] Client passingData)
{
return PartialView("ClientProgramSelector", passingData);
}
最後,這裏是div我試圖將該組件放置到進
<div id="#clientProgramSelectorPlaceholder"></div>
的代碼顯示沒有錯誤,但沒有被顯示在網頁上。有沒有人看到我在做什麼錯了?另外,有沒有辦法只使用傳遞的模型,而不必重新創建數據?
在此先感謝
嘗試用'success'替換'done'並在AJAX調用中放入'error'函數。 –
ajax調用是否成功?它返回200 OK嗎?或404,如果它是404,你應該修復你的網址 – Shyju
該電話是成功的,我只是id錯了。那是一個愚蠢的錯誤。但是,仍然想知道是否可以直接在ajax調用中傳遞viewmodel,謝謝。 –