我在Accept请求标头上注意到这个参数:
Accept: application/json, text/javascript, */*; q=0.01
我对这q=0.01意味着什么有点好奇?
我从网站获取JSON字符串.我有这样的数据(JSON数组)
myconf= {URL:[blah,blah]}
Run Code Online (Sandbox Code Playgroud)
但有时这个数据可以是(JSON对象)
myconf= {URL:{try}}
Run Code Online (Sandbox Code Playgroud)
也可以是空的
myconf= {}
Run Code Online (Sandbox Code Playgroud)
我希望在它的对象时做不同的操作,而在它的数组时则不同.直到我的代码,我试图只考虑数组,所以我得到以下异常.但我无法检查对象或数组.
我得到以下异常
org.json.JSONException: JSONObject["URL"] is not a JSONArray.
Run Code Online (Sandbox Code Playgroud)
任何人都可以建议如何修复它.在这里,我知道对象和数组是JSON对象的实例.但我找不到一个函数,我可以检查给定的实例是数组还是对象.
我试过使用这个条件,但没有成功
if ( myconf.length() == 0 ||myconf.has("URL")!=true||myconf.getJSONArray("URL").length()==0)
Run Code Online (Sandbox Code Playgroud) 代码很简单,我不知道为什么它deosnt工作.
这是JSON文件的链接,http://webapp.armadealo.com/home.json
这是使用getJSON的代码
$.getJSON("http://webapp.armadealo.com/home.json", function(data){
alert(data);
});
Run Code Online (Sandbox Code Playgroud)
我只是希望代码显示整个JSON内容.
我有一个组合框,在更改时触发jquery函数,它调用一个php脚本,它从数据库中按名称而不是id(表城市)排序,并创建一个带有id和城市名称的json文件.问题来自$ .getJSON(url,data)函数,它可以很好地检索所有json编码数据,但它似乎是通过id自动排序数据
例如,如果php页面生成
id name
3 Dania Beach
1 Miami
2 Weston
Run Code Online (Sandbox Code Playgroud)
在jquery getJSON之后,它按id排序
id name
1 Miami
2 Weston
3 Dania Beach
Run Code Online (Sandbox Code Playgroud)
有没有办法禁用排序?或者如何按名称保存订单?
var jqxhr = $.getJSON( "example.json", function() {
console.log( "success" );
})
.done(function() {
console.log( "second success" );
})
.fail(function() {
console.log( "error" );
})
.always(function() {
console.log( "complete" );
});
Run Code Online (Sandbox Code Playgroud)
成功函数(作为第二个参数传递)与done()函数之间的区别是什么?他们似乎是一回事.
当打电话给雅虎网络服务(http://boss.yahooapis.com/ysearch)以返回数据集时,是否可以设置超时并在程序结束后退出例程?
jQuery.getJSON("http://boss.yahooapis.com/ysearch/...etc",
function (data) {
//result set here
});
Run Code Online (Sandbox Code Playgroud) 我创建了一个包含以下数据的树.在这个过程之后,我在菜单之间进行了拖放过程.结果我的菜单结构被更改了.我想导出与我的第一个数据具有相同结构的新json数据.如何从树中获取数据?请帮助我.
我试过这段代码,但这个导出非常复杂的json.我想要我的第一个数据格式.
var v = $('#data').jstree(true).get_json();
var mytext = JSON.stringify(v);
alert(mytext);
Run Code Online (Sandbox Code Playgroud)
第一个菜单状态:
菜单的最后状态:
// html demo
$('#html').jstree();
// inline data demo
$(function() {
var arrayCollection = [
{"id": "animal", "parent": "#", "text": "Animals"},
{"id": "device", "parent": "#", "text": "Devices"},
{"id": "dog", "parent": "animal", "text": "Dogs"},
{"id": "lion", "parent": "animal", "text": "Lions"},
{"id": "mobile", "parent": "device", "text": "Mobile Phones"},
{"id": "lappy", "parent": "device", "text": "Laptops"},
{"id": "daburman", "parent": "dog", "text": "Dabur Man", "icon": "/"},
{"id": "Dalmation", "parent": "dog", "text": "Dalmatian", "icon": …Run Code Online (Sandbox Code Playgroud) 原来这是一个Firebug bug的人工制品.Ajax请求被取消,但Firebug继续将其报告为活动状态.细节在这里.
我一直在运行XMLHttpRequests,我需要能够在某些情况下中止它们.
我以正常方式设置请求:
ajax = $.getJSON(url + "?updates", function(data) { ...; });
Run Code Online (Sandbox Code Playgroud)
后来我想中止这个请求,看起来很简单:
ajax.abort();
Run Code Online (Sandbox Code Playgroud)
然而,当我看着Firebug时,我发现它仍在运行......
我在尝试中止它之前就调试了ajax的值.它确认它的值是和XMLHttpRequest(readyState为0).
对abh()在XMLHttpRequest上的触发方式和时间有限制吗?
我正在使用jQuery的getJSON调用来检索JSON.
我的问题是返回的JSON中的一些字段中有空格.
如何在不更改源数据的情况下从JSON检索这些值?请参阅下面标有"错误"的行:
$.getJSON(url, null, function(objData) {
$.each(objData.data, function(i, item) {
var zip = item.Zip;
var fname = item.First Name; //ERROR
});
});
Run Code Online (Sandbox Code Playgroud)
示例JSON:
jsonp123456789({"data":[{"Zip":"12345","First Name":"Bob"},{"Zip":"23456","First Name":"Joe"},{"Zip":"34567","First Name":"Bill"}]})
Run Code Online (Sandbox Code Playgroud)
谢谢
我搜索了FOREVER,无法对我的问题做出明确的答案.所以这就是.我有一个JSON文件(我去jsonlint验证,它说它很好)看起来像这样(一些信息修改):
[{
"position":"1",
"category":"A",
"title":"Title to first story",
"description":"The first story."
},
{
"position":"2",
"category":"B",
"title":"Title to second story",
"description":"The second story"
},
{
"position":"3",
"category":"B",
"title":"Title to third story",
"description":"The third story"
}
]
Run Code Online (Sandbox Code Playgroud)
我使用jQuery解析并使用此函数放置一个html页面:
$.getJSON('page.json', function(data) {
var items = [];
$.each(data.reponse, function(item, i) {
items.push('<li id="' + i.position + '">' + i.title + ' - ' + i.description + '</li>');
});
$('<ul/>', {
'class': 'my-new-list',
html: items.join('')
}).appendTo('body');
});
Run Code Online (Sandbox Code Playgroud)
它完美无缺!现在我的问题是,JSON文件不会在本地托管,实际上将托管在一个单独的域上.所以我修改了我的代码如下(经过一些阅读)希望让它工作:
$.getJSON('http://www.otherdomain.com/page.json?format=json&callback=?', function(data) {
var items = []; …Run Code Online (Sandbox Code Playgroud) getjson ×10
jquery ×7
json ×6
javascript ×4
ajax ×1
cross-domain ×1
http-headers ×1
java ×1
jsonp ×1
jstree ×1
parsing ×1
sorting ×1
timeout ×1
tree ×1
url ×1