Javascript Ajax调用不返回部分视图
我正在进行一个AJAX调用,然后从Controller返回PartialView,将其填充到一个div中 以下是我的代码:-Javascript Ajax调用不返回部分视图,javascript,c#,jquery,ajax,asp.net-mvc,Javascript,C#,Jquery,Ajax,Asp.net Mvc,我正在进行一个AJAX调用,然后从Controller返回PartialView,将其填充到一个div中 以下是我的代码:- var file = document.getElementById("file").files[0]; jq.ajax({ type: "POST", url: '/Main/getData', data: formData, dataTyp
var file = document.getElementById("file").files[0];
jq.ajax({
type: "POST",
url: '/Main/getData',
data: formData,
dataType: 'json',
contentType: false,
processData: false,
success: function (response) {
jq('#partialPlaceHolder').html(response);
},
error: function (error) {
alert("Some Error Occured");
}
});
[HttpPost]
public ActionResult getData(FormCollection form)
{
......
return PartialView("_pageMain", retMod);
}
当我在Controller中调试代码时,直到最后都没有错误,但是AJAX仍然会抛出警报,因为发生了一些错误
PartialView未填充在div中。如何解决此问题?您正在将返回数据类型设置为json
dataType: 'json'
尝试将此更改为
dataType: 'html'
看这里
数据类型默认值:智能猜测xml、json、脚本或html
类型:字符串
期望从服务器返回的数据类型 为什么不使用.load
描述:从服务器加载数据,并将返回的HTML放入匹配的元素中
而且很简单:
$('#partialPlaceHolder').load("@Url.Action('getData')", { form: formData })
load的第三个参数是回调函数,所以可以随意使用它
顺便说一句:我没有在代码中找到使用变量文件的方法。您是否尝试了JSON.stringifyformData或在开发工具中查看响应的内容?是partialview html还是JSON?partialview是.cshtml。。。我在我的另一个模块中使用了它,它在那里工作……因为我在这里发布文件,所以它给出了错误……类似的东西,