唉,和ajax一樣,json也被」妖魔化「了……炒作惹得禍啊
『貳』 怎樣將json格式的數據放到js中
如果數據是固定的有兩種方法
1.把json數據定義為一個變數
varjson={"a":1,"b",2};
//這樣可以直接調用,數據太多可以放到一個額外的js文件上
2.數據寫在一個文件上,命名為a.json
$.getJson(url,funciton(rs){
//url是文件路徑,例如../json/a.json
//rs就是返回的json數據了
});
如果數據是後台傳過來的
$.post(url,data,function(rs){
//url是後台controller的方法的路徑
//data是傳到後台的json格式的參數,可選
//rs是返回的數據
},"json");//最後這個json不能漏
『叄』 如何在一個js文件內引用json文件
如果要使用js讀取json文件,那麼ajax操作是必須的了。原生ajax有點麻煩,我想你們項目一定用了什麼js庫,這里給個jquery的例子:
$.get('xx.json路徑', function(data){
alert(data); // data即為json文件內容里的json數據
}, 'json');如果把這個文件的內容讀取為純文本,可以修改$.get的最後一個參數json為text,或者刪掉這個參數,默認也是text。
『肆』 js創建json數據並保存
1、新建一個HTML頁面,命名為test.html。
『伍』 如何在javascript中讀取本地的json格式文本文件
g.loadScript = function (uri, cb, charset) {//load 單個請求
var _script = document.createElement("script");
_script.type = "text/javascript";
_script.charset = charset || "utf-8";
_script._fun = typeof cb != "undefined" ? cb : new Function();
_script[document.all ? "onreadystatechange" : "onload"] = function () {
if (document.all && this.readyState != "loaded" && this.readyState != "complete") { return; }
this._fun(this);
this._fun = null;
this[document.all ? "onreadystatechange" : "onload"] = null;
var _t = this;
_t.parentNode.removeChild(_t);
};
_script.src = uri;
document.getElementsByTagName("head").item(0).appendChild(_script);
};
loadScript(url,function(){console.log(json)},"utf-8")//把你的文本文件換成HTML,url是html地址,json是你的json變數的變數名。jsonp格式獲取。
『陸』 如何引入json文件並把數據賦給一個變數
var jsonVal = '{"id","111","name":"小杜"}';
這樣就構造了抄一個包含json格式的js變數,後續如果解析;需要轉化為json對象
比如:var jObject=jQuery.parseJSON(jsonVal );
alert("id="+jObject.id);
這個值就是預期的"111"了
『柒』 js怎樣生成json的數據
1、按照描述,題主是想將多條數據記錄提交到服務端,同時服務端將數據插入到資料庫。那麼思路是將多條數據存在數組中,調用post方法的介面傳入後端。
2、方法如下:
var sendData = [];
sendData.push({name:'david',age:'20'});
sendData.push({name:'peter',age:'23'});
2、jquery中post與get的區別:
1) $.get() 方法使用GET方法來進行非同步請求的。$.post() 方法使用POST方法來 進行非同步請求的。
2)get請求會將參數跟在URL後進行傳遞,而POST請求則是作為HTTP消息的實體 內容發送給Web伺服器的,這種傳遞是對用戶不可見的。
3) get方式傳輸的數據大小不能超過2KB 而POST要大的多。
4)GET 方式請求的數據會被瀏覽器緩存起來,因此有安全問題。