我一直在从jquery收到针对Ajax请求的“
parsererror”,我尝试将POST更改为GET,以几种不同的方式(创建类等)返回数据,但是我似乎无法弄清楚问题出在哪里。
我的项目在MVC3中,我使用的是jQuery 1.5,我有一个Dropdown,并在onchange事件上触发了一个调用,以基于所选内容获取一些数据。
下拉列表:(这会从Viewbag的列表中加载“ Views”,并触发事件正常)
@{
var viewHtmls = new Dictionary<string, object>();
viewHtmls.Add("data-bind", "value: ViewID");
viewHtmls.Add("onchange", "javascript:PageModel.LoadViewContentNames()");
}
@Html.DropDownList("view", (List<SelectListItem>)ViewBag.Views, viewHtmls)
Javascript:
this.LoadViewContentNames = function () {
$.ajax({
url: '/Admin/Ajax/GetViewContentNames',
type: 'POST',
dataType: 'json',
data: { viewID: $("#view").val() },
success: function (data) {
alert(data);
},
error: function (data) {
debugger;
alert("Error");
}
});
};
上面的代码成功调用了MVC方法并返回:
[{"ViewContentID":1,"Name":"TopContent","Note":"Content on the top"},
{"ViewContentID":2,"Name":"BottomContent","Note":"Content on the bottom"}]
但是jquery触发$ .ajax()方法的错误事件,说“ parsererror”。
我最近遇到了这个问题,偶然发现了这个问题。
我用一种简单得多的方法解决了它。
方法一
您可以dataType: 'json'
从对象文字中删除该属性…
方法二
或者您可以通过将数据返回为来执行@Sagiv所说的Json
。
parsererror
出现此消息的原因是,当您仅返回一个字符串或另一个值时,它不是真正的Json
,因此解析器在解析时会失败。
因此,如果删除该dataType: json
属性,它将不会尝试将其解析为Json
。
使用其他方法,如果您确保将数据返回为Json
,则解析器将知道如何正确处理它。
问题内容: 我想做的事情似乎很简单:通过 HTML 页面并从中提取一个值。 问题是 jQuery 拒绝解析返回的HTML。 同时,我正在玩的小提琴没有用,因此我无法提供其他可行的示例。 更新: 我的新提琴工作正常,但是似乎问题在于,在我的实际项目中,我试图解析大量复杂的HTML。这是一个已知问题吗? 问题答案: 您的代码工作正常。您只是没有正确使用jsFiddle的API。检查文档中的(http:
我在本地服务器上找到了它失败的代码: 在我看来,它似乎不能获得或?
本文向大家介绍jquery+ajax请求且带返回值的代码,包括了jquery+ajax请求且带返回值的代码的使用技巧和注意事项,需要的朋友参考一下 现在比较流行使用jquery的ajax来实现一些无刷新请求效果,本章节提供一个非常简单的代码实例供大家参考之用,希望能够给需要的朋友带来一定的帮助,代码如下: async是asynchronous[异步]的缩写,它是一个bool值默认为true。当as
我试图通过ajax发布json数据。json数据包含一个大的html表。然而,这个POST请求被转换成GET请求,我得到错误414(请求-URI太长)。我知道jsonp POST请求转换成GET,但是为什么我的json请求转换成GET?
问题内容: 我是使用jQuery处理AJAX的新手,并且已经编写了一个基本脚本来掌握基础知识。当前,我正在将AJAX请求发布到同一文件,并且我希望基于该AJAX调用的结果进行一些其他处理。 这是我的代码: 这是我提交数字“ 2”时得到的答复: 显然,我只对接收和使用数字“ 4”感兴趣,因此我的问题是: 确切指定要返回的数据的最佳方法是什么? 我有一些想法: 将我所有的HTML都包装在if语句中(即
问题内容: 编辑2 我仍然需要帮助,因为错误仍然没有得到解决。下面,我添加了指向.ajaxError()抛出的屏幕截图的链接: http://i.imgur.com/RkcgNtG.jpg 另一个想法是服务器设置。suphp或mpm_itk模块是否有可能是导致此错误的原因? 编辑 我已经弄明白了。我的Ajax- Call应该从输入和文本区域更新一些数据。我进行了更多测试,发现403仅在我的文本区域