Ⅰ jquery中怎麼獲取json的key值
獲取方法如下:
用jquery回調函數完成。
$.each(json, function(i) { console.log(i); //獲取鍵值
console.log(json[i]); //獲取對應的value});
for (var key in json) { console.log(key); //獲取key值
console.log(json[key]); //獲取對應的value值}
JSON(JavaScript Object Notation)是一種輕量級的數據交換格式。JSONM文件中包含了關於「名稱」和「值」的信息。有時候我們需要讀取JSON格式的數據文件,在jQuery中可以使用Ajax或者 $.getJSON()方法實現。
jQuery是一個快速、簡潔的JavaScript框架,是繼Prototype之後又一個優秀的JavaScript代碼庫(或JavaScript框架)。jQuery設計的宗旨是「write Less,Do More」,即倡導寫更少的代碼,做更多的事情。它封裝JavaScript常用的功能代碼,提供一種簡便的JavaScript設計模式,優化HTML文檔操作、事件處理、動畫設計和Ajax交互。
jQuery的核心特性可以總結為:具有獨特的鏈式語法和短小清晰的多功能介面;具有高效靈活的css選擇器進行擴展;擁有便捷的插件擴展機制和豐富的插件。jQuery兼容各種主流瀏覽器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。
Ⅱ shell腳本如何從json文件讀取一個某個值
time=`cat json|awk -F"[xxx]" '/xxx/{print $x}'`
這樣去取參數
Ⅲ jquery怎麼獲取json里其中一個值
json字元串是key:value鍵值對,要獲取key對應的value值,只需要jsonobject.key就行了,在你的代碼里就是版ds.key(要獲取的value對應的權key)
補充一下,你這個應該先獲取table屬性對應的值(是個數組)獲取數組的第一個元素然後在.key
ds.Table[0].key 比如ds.Table[0].NAME能獲取「張三」
Ⅳ 如何使用jquery取出json格式的數據
不知道你想做什麼。
jquery是運行在瀏覽器端的一個js
函數庫,json被瀏覽器解析之後就內是
一個js字面量容(或叫做對象)
。你說拼接,是不是把兩個json的數據變成一個對象?我覺得這完全沒必要吧,如果你需要同時獲取兩個json你可以在伺服器端直接把這兩次請求合並為一個,這樣只用一次請求
速度還快一些
。
如果你非要獲取兩次然後拼接成一個對象也可行。
function
callback(json){
這里寫你處理最終json的代碼
}
$.getjson("url1",
function(json1)
{//獲取第一個json
$.getjson("url2",
function(json2)
{//回調函數中獲取第二個json
var
key;
for
(key
in
json2)
{//遍歷第二個json對象添加到第一個json中
json1[key]
=
json2[key];
};
callback(json1);
//處理最終得到的json對象
});
});
Ⅳ 關於使用jq 處理json格式的簡單筆記
json格式包含有如下的基本類型 : 數字,字元串,false, true, null
而由基本類型組成的復合類型有 : 數組,對象;其中數組是以 [ ] 進行標記的,而對象是以 { } 進行標記;
jq 這個命令用來處理json數據格式,非常方便,簡單記錄其常用的使用方法如下:
A. 對於數組的處理:
1). 如果 jq 要處理的json是 數組類型,那麼用 「 jq .[ ] 」 可以將數組的最外層的[ ] 標記脫掉, 從而變成 對象 類型。
2). 上述命令的 中括弧裡面可以帶有參數,這個參數就是 數組的下標,這個下標從前向後最小是 0,最大值沒有限制,如果超出,那麼就會return null. 同時支持下標從後向前基數,最小為-1. 但是參數的值除了數字,不可以是空格. 同時數組的下表支持 切片,也就是 [2:7] 或者 [1,2,5,7] 這種格式都是支持的.
B. 對於對象的處理:
1). 因為對象裡面的每個元素都是 key:value的形式存在,雖然value 也可以是一個復合類型,但是不影響 key:value 這種格式,所以對於對象,通常用 jq .key 這種方式來獲取對應key的value. 其中key 在這里可以不用引號括起來,當然也可以用引號括起來,反正key都是字元串類型。
2). 如果要獲得對象所有元素的key值,那麼要把 |keys 串接在對象後面,需要注意的是 這里不是利用的shell的管道,而是jq內置的管道,所以屬於jq的參數的一部分. 例如:
其實 keys 屬性不僅僅支持 對象,也支持json 數組,比如:
3). 判斷是否存在某個key.
在上面利用jq內置的 keys 屬性,可以獲取所有的key, 其實還有jq內置的has 方法,這個方法可以判斷對應的key是否存在. 例子如下:
4). jq 的查找結果避免輸出 錯誤,轉而輸出null
在查找條件的後面加上一個問號,那麼如果找不到就不會輸出任何的error, 相應的輸出一個null來替代. 這個問號可以加在方法的後面(後面的例子中可以看到)。這在遞歸查找的時候非常有用;否則可能會出現報錯的情形.
5). jq 的查找結果為空,避免輸出null ,而是什麼都不輸出
目前不知道怎麼實現,暫且用其他的linux 命令來過濾吧
6). 根據指定的關鍵字查找有該關鍵字的key,也就是模糊查找
jq 支持PCRE 正則表達式,所以支持模糊搜索, 這里主要展示用scan 方法輸出模糊搜索的結果. 用法實例如下:
7). 根據指定的key, 查找嵌套對象中所有該key的value,輸出該value
使用 .. 或者 recurse 來表示遞歸查找,然後通過管道進行常規的查找就可以了,舉例如下:
8). 如何將匹配key 的 key 和value 一起進行輸出?
以上的命令表示遞歸方式,獲取Key為name的所有key:value對,並以key:value的方式進行輸出,但是空的字典對象如何排除呢? 目前還沒有發現好的解決方法
9). 因為keys 屬性支持對象的同時,也支持數組,所以如何來剔除數組而只是要對象的keys呢?
有一個walk 方法可以實現,但是不常用,所以這里不做討論.
10).嵌套的模糊查找,上面描述了用scan進行模糊查找,以及用recurse來進行嵌套,如何兩者結合呢?
因為scan方法只能夠作用於字元串,所以不可以簡單的將recurse和scan 結合起來使用,這里需要通過keys來實現 嵌套的模糊查詢. 舉例如下:
11). 其他使用小tips:
在可以使用 .key1.key2 這種情況下,也可以使用 .key1|.key2 的格式,個人更傾向於使用 .key1|.key2 ,因為看起來更清晰明了. 比如下面的例子.
在大多數情況下我們看到的json 復合格式最外層都是數組的形式,而不是對象的形式,這個是因為什麼原因呢? 因為json的對象必須是 key:value 的格式,雖然value 也可以是一個復合格式,但是一定需要key:value 形式,而 數組的不同元素的類型之間沒有任何的關聯,同一個數組,既可以包含有字元串元素,也可以包含對象元素,還可以包含數字... ,因此一個復合類型的 json格式一般最外層都是數組的形式.
首先用模糊查詢,配合遞歸查找相應的key;-----簡言之,就是找到key
然後用特定的key, 配合遞歸查詢找到所有的結果;------簡言之,就是依據key遍歷到所有的值
最後對上述的結果做進一步的處理得到需要的結果. -----簡言之,對得到的值做進一步的過濾獲得真正需要的結果
簡單例子如下下:
簡單總結:
Ⅵ jq 怎麼獲取json 數據的值
如果是後台數據就用ajax獲取,這樣獲取後的數據一般為json數據。如是前端回數據轉為json數據就答用JSON.parse方法。如:
vars='[1,2,3]';vararr=JSON.parse(s);//arr=[1,2,3]
Ⅶ jquery easyui 中的combobox讀取後台傳遞過來的json數據的例子
第一步,在後台Action 要先生成符合comboboxJson格式的數據,就是將你的list轉換為這專種格式,通常是Map裡面存屬兩個 diCode diName diCode相當於<optiion>裡面的value diName 這是text
將組裝好的Map放入list 中,然後將list轉換為json就好。
第二步,在jsp頁面後者其它前台頁面直接這樣就可以:
<input class="easyui-combobox"
name="cc"
id="cc"
url="<%=path %>/json/dataAction!cascadeAction.action"
valueField="diCode"
textField="diName"
panelHeight="auto" editable="false" />
頁面上寫input 也可以 寫select也可以只要你寫了class="easyui-combobox"就變成easy-ui的控制項了。url是最核心的東西,指向你後台將要返回json的Action