我正试图让这个Jquery.parseJson无法正常工作。
<input type="text" id="query" /><button>search</button><br />
<div id="results">
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$('button').click(function(){
$("#query").val(); // Do nothing with this value
$.getJSON('{"name":"John"}',function(json){
$.each(json.results,function(i,obj){
$("#results").append('<p>' + obj.name + '</p>');
});
});
});
});
</script>
此代码的目的是在div结果中显示名称“John”。
有人可以给我一些关于我做错的线索吗?
最诚挚的问候,
答案 0 :(得分:2)
$.getJSON()
用于从网址获取JSON ,在您已经拥有的字符串上操作时只需要$.parseJSON()
,如下所示:
$('button').click(function(){
$("#query").val(); // Do nothing with this value
var obj = $.parseJSON('{"name":"John"}');
$("#results").append('<p>' + obj.name + '</p>');
});
答案 1 :(得分:0)
使用firebug检查您是否传递了每个陈述。
然后检查json
答案 2 :(得分:0)
您可以使用“eval”将字符串转换为JSON对象。 请记住,字符串需要加以括号,不能被识别为标记声明。
<input type="text" id="query" /><button>search</button><br />
<div id="results">
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$('button').click(function(){
$("#query").val(); // Do nothing with this value
var json = eval('({"name":"John"})');
$("#results").append('<p>' + json.name + '</p>');
// $.getJSON('{"name":"John"}',function(json){
// $.each(json.results,function(i,obj){
// $("#results").append('<p>' + obj.name + '</p>');
// });
// });
});
});