【发布时间】:2013-06-02 05:01:09
【问题描述】:
我是 JavaScript、JQuery 和 Ajax 编码的新手。 我正在使用 JQuery $.ajax 方法来调用异步 REST 调用。 不知何故,我无法接收 HTTP 响应 JSON 数据。
我可以看到以下警报结果。 alert(data) 方法的结果是 [Object Object] alert(data.toSource()) 方法结果为 ({"key1","value1"}) alert($.parseJSON(data)) 方法结果什么都没有
我已经在 Firefox 和 chrome 浏览器中测试了以下代码。
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"</script>
</head>
<body>
<form id="foo">
<label for="bar">A bar</label>
<input id="bar" name="bar" type="text" value="" />
<input type="submit" value="Send" />
</form>
<!-- the result of the search will be rendered inside this div -->
<div id="result"></div>
<script>
$("#foo").submit(function(event) {
event.preventDefault();
$("#result").html('');
var values = $(this).serialize();
$.ajax({
url: "resources/helloWorld",
type: "GET",
dataType: 'json',
success: function(data){
alert(data);
alert(data.toSource());
var r = $.parseJSON(data);
alert(r);
$("#result").html(data);
},
error:function(){
$("#result").html('there is error while submit');
}
});
});
</script>
</body>
【问题讨论】:
-
您返回的是有效的 JSON 吗?
-
我的 json 响应是 {"key1":"value1"}
-
你能发布json文件吗?这很容易分析。
-
一切都很好。使用
console.log()而不是alert(),您会在控制台中看到正确的数据。
标签: javascript ajax jquery