導航:首頁 > 版本升級 > ajax獲取本地json文件

ajax獲取本地json文件

發布時間:2023-01-02 01:14:02

『壹』 AJAX 怎麼獲取jsON中的指定數據

假設你從ajax獲取字元串為 ajaxString,則可以這樣獲取ID:
var jsonData = JSON.parse(ajaxString);
var id = jsonData.result.ID;

『貳』 ajax 返回的是json 怎麼獲取到

您好,當我們提交某條信息,經過後台的處理之後,便要返回結果給我們,當返回了 json 格式時,我們在前台有多種接收方式的,例如:

1、視圖層使用$.post 或者$.get 提交數據,最重要的是後面這個參數,將指定伺服器消息結果的返回類型;

$.post("url","parameter",callback(data),"JSON");

2、視圖層使用$.ajax 提交,ajax 相比於 get,post,使用較為復雜,但也著實簡單,我們可以通過 dataType:"JSON",指定指定伺服器消息結果的返回類型;

最後,這兩重結果的接受方式就是通過參數,即回調函數中的 data,請看例1中的 callback(data),類似於 Java 中的方法調用,data.msg 等等...獲取我們需要的信息;

『叄』 怎麼通過ajax從後台獲取json數據

1.第一步:創建非同步對象
var xhr=new XMLHttpRequest ();//創建一個非同步對象。
上面創建非同步對象的方法非瀏覽器都支持。IE7以上也支持。
2.第二步:創建http請求(只是打開和url的連接,並不會發送請求。)
var xhr=new XMLHttpRequest();
xhr.open("get","介面的地址","true");
//參數一:發送請求的方式:方式分別有post和get
//參數二:請求地址
//參數三:是否是非同步提交true:非同步,flase:同步提交

//如果使用post請求需要為post請求設置一個請求頭(必須在發送數據之前)設置方法如下:
//xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
3.第三步:發送數據(get和post發送數據的方式不相同)
var xhr=new XMLHttpRequest ();//創建一個非同步對象。
xhr.open("get","介面地址?name=zhangsan","true");
//在發送數據上需要注意的是get和post的發送方式
//get:數據需要拼接到open方法裡面的URL地址里格式為URL?數據。(注意:get方式也還是需要調用send方法如不調用數據將不會發送)
//post:數據直接寫到send方法里即可如下:
// xhr.send("name=zhangsan");
4.第四步:設置監聽請求狀態的回調函數
請求狀態分為5步:
0.未初始化:非同步對象創建出來但是還沒有打開連接,(即未調用open方法)
1.已初始化:非同步對象已經創建並且打開了連接(調用了open方法),但是還沒有發送請求(未調用end方法)
2.已發送數據:已經調用了send方法,但web伺服器響應還未返回
3.正在接收:web伺服器接收完數據並且處理完畢後,向客戶端發送響應結果
4.接收完畢:當web伺服器響應的數據全部接收完畢
以上序號對應readyState的值
完整的是這樣:
var xhr=new XMLHttpRequest ();//創建一個非同步對象。
xhr.open("get","介面地址","true");
//下面的回調函數是會動態監聽請求狀態
xhr.onreadystatechange=function(){
//readyState屬性會記錄下5種請求狀態
if(xhr.readyState == 4){
alert("web伺服器響應的數據全部接收完畢")
}
}

『肆』 ajax請求本地json文件出現跨域問題

開發的時候,會經常使用一些假數據,這個時候我們就會在本地進行ajax請求(開發工具使用vscode,如果是webstrom則不會有這個問題),來獲取數據,例如ajax本地請求json文件,但是在請求的時候會遇到跨域問題:

建議使用火狐瀏覽器,因為谷歌瀏覽器是不允許跨域請求的,因為不安全,但是我們現實中,很多地方是必須要用到跨域請求,谷歌瀏覽器嚴格遵循,但是火狐瀏覽器考慮到現實因素,就可以使用跨域,但是需要進行一些設置.
1、在Firefox的地址欄輸入「about:config」,回車
2、在過濾器(filter)中搜索「security.fileuri.strict_origin_policy」(第一次會出現安全協議,點擊確認即可)
3、雙擊security.fileuri.strict_origin_policy設置為false
4、關閉目前開啟的所有Firefox窗口,然後重新啟動Firefox,這個時候就可以了.

雖然會報格式不佳的錯誤,但是數據還是請求出來滴!

『伍』 ajax獲取到json數據怎麼顯示在jsp頁面tb上

第一步:在你的Action中創建一個json數據

public class AjaxAction extends ActionSupport{ /** * */private static final long serialVersionUID = 1L; private String result; public String getResult() { return result; } public void setResult(String result) { this.result = result; }public String getjson() { JSONObject json = new JSONObject(); json.put("name","張三"); json.put("password","123456"); result=json.toString(); return SUCCESS;}

第二步:編寫struts.xml文件中的內容

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN" "http://struts.apache.org/dtds/struts-2.5.dtd"> <struts> <!-- 設置開發者模式 修改action中的名字可以不用重啟伺服器 --> <constant name="struts.devMode" value="true"></constant> <!-- 只有在後綴中有(.do)的才經過,這個value可以自己修改 --> <constant name="struts.action.extension" value="do"></constant> <!-- 開啟動態方法調用 --> <constant name="struts.enable.DynamicMethodInvocation" value="true"/> <package name="default" extends="json-default" namespace=""> <action name="ajax" class="com.action.AjaxAction" method="getjson"> <result name="success">/ajaxjson.jsp</result> <result type="json" ><!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應的getter方法 --> <param name="root">result</param> </result> </action> </package> </struts>

凡是使用Struts2序列化對象到JSON的action,所在的package必須繼承自json-default,注意,這里唯一的result,沒有指定name屬性。parm設置name=「root」表示局部刷新,返回根目錄頁面.

第三步:首先先了解Ajax的原理:這是用jQuery做的,需要引 js

function testCheck(num){ $.ajax({ type:"post",//提交方式url:"TestCheckServlet",//提交地址async:true,//是否非同步請求dataType:"html",//返回類型data:{"num":num},//傳過去的值success:function(data,textStatus){//成功執行的方法var json=eval("("+data+")");//將傳過來的數據轉json,也可以傳過來就是json數據免得麻煩轉 alert(json.name); }, error:function(){//失敗執行的方法alert("error"); } }) }

『陸』 layui 利用ajax沖獲取到json 數據後 怎樣進行渲染

1、新建一個html文件,命名為test.html。

『柒』 ajax獲取本地的兩個json,我把其中一個key取了差值,然後插入頁面,問題是如何給插入做個排序呢

你可以先排序,後找差值。
var json3={};
var max_key=0;
for(var i in json2){
max_obj={};
xh_max_key = 0;
for(var j in json2){
max=0;
if(json2[j]["yue"]>max && !json3[j]){
max_obj = json2[j];
xh_max_key = j;
max= max_obj["yue"];
}
}
if(xh_max_key!=0){
json3[xh_max_key] = max_obj;
max_key = xh_max_key;
}
}
用json3代替json2進行操作!

『捌』 ajax怎麼獲取返回的json數據

首先要明白ajax的基本格式,參考下面的內容,可以發現,success是請求成功後伺服器返回的數據,接收只需要把回調函數的值處理就可以了,如:

response:即為伺服器返回的數據,例如:{"uid":123,"name":"jghdream"},

如下輸出即可:

....
success:function(response){
console.log(response.uid);
console.log(response.name);
}
.....

以下是ajax的一些參數:

$.ajax({
type:'post',
url:'/testajax.php',
dataType:'json',
data:{uid:uid,rands:Math.random()},
success:function(){
alert('ajaxreturnsuccess');
}});

url,類型:String,默認值: 當前頁地址。發送請求的地址

data,類型:String,發送到伺服器的數據。將自動轉換為請求字元串格式。GET 請求中將附加在 URL 後。查看 processData 選項說明以禁止此自動轉換。必須為 Key/Value 格式。如果為數組,jQuery 將自動為不同值對應同一個名稱。如 {foo:["bar1", "bar2"]} 轉換為 '&foo=bar1&foo=bar2'

dataType,類型:String,預期伺服器返回的數據類型。如果不指定,jQuery 將自動根據 HTTP 包 MIME 信息來智能判斷,比如 XML MIME 類型就被識別為 XML。在 1.4 中,JSON 就會生成一個 JavaScript 對象,而 script 則會執行這個腳本。隨後伺服器端返回的數據會根據這個值解析後,傳遞給回調函數。可用值:

"xml": 返回 XML 文檔,可用 jQuery 處理。

"html": 返回純文本 HTML 信息;包含的 script 標簽會在插入 dom 時執行。

"script": 返回純文本 JavaScript 代碼。不會自動緩存結果。除非設置了 "cache" 參數。注意:在遠程請求時(不在同一個域下),所有 POST 請求都將轉為 GET 請求。(因為將使用 DOM 的 script標簽來載入)

"json": 返回 JSON 數據 。

"jsonp": JSONP 格式。使用 JSONP 形式調用函數時,如 "myurl?callback=?" jQuery 將自動替換 ? 為正確的函數名,以執行回調函數。

"text": 返回純文本字元串

success,當請求之後調用。傳入返回後的數據,以及包含成功代碼的字元串。

『玖』 如何使用ajax讀取Json中的數據

html

<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<title>使用AJAX非同步讀取json</title>
<scriptsrc="ajax.js">
</script>
<script>
window.onload=function()
{
/*獲得按鈕*/
varaBtn=document.getElementById('btn1');
//給按鈕添加點擊事件
aBtn.onclick=function()
{
//調用ajax函數
ajax('data.json',function(str){
//將JSON數據來生成原生的JavaScript對象
vararr=eval(str);
alert(arr[0].b);
});
};
};
</script>
</head>
<body>
讀取json裡面的數據<br/>
<inputid="btn1"type="button"value="讀取json裡面的數據"/>
</body>
</html>

封裝的AJAX函數代碼如下:

/*
AJAX封裝函數
url:系統要讀取文件的地址
fnSucc:一個函數,文件取過來,載入完會調用
*/
functionajax(url,fnSucc,fnFaild)
{
//1.創建Ajax對象
varoAjax=null;

if(window.XMLHttpRequest)
{
oAjax=newXMLHttpRequest();
}
else
{
oAjax=newActiveXObject("Microsoft.XMLHTTP");
}

//2.連接伺服器
oAjax.open('GET',url,true);

//3.發送請求
oAjax.send();

//4.接收伺服器的返回
oAjax.onreadystatechange=function()
{
if(oAjax.readyState==4)//完成
{
if(oAjax.status==200)//成功
{
fnSucc(oAjax.responseText);
}
else
{
if(fnFaild)
fnFaild(oAjax.status);
}
}
};
}

『拾』 jquery+ajax怎樣讀取json文件的內容

$(function() {
$.ajax({
type:"GET",
url:"list.json",
dataType:"json",
success:function(iJson){
var test = eval(iJson);
alert(test[0][0].TITLE);
},
error:function(){
容alert("error");
}
});
});

閱讀全文

與ajax獲取本地json文件相關的資料

熱點內容
linuxqt觸控事件 瀏覽:381
國際網路監控 瀏覽:967
哪個網站鞋子最好 瀏覽:987
蘋果720p 瀏覽:248
微博拼圖工具 瀏覽:572
博客與網路營銷下載 瀏覽:644
爆破肉雞教程 瀏覽:138
文件傳輸常常被直接稱為什麼 瀏覽:307
監控上面顯示配置文件錯誤 瀏覽:583
數據服務實踐表怎麼填 瀏覽:738
iphone6s港行真偽查詢 瀏覽:827
看不到網路怎麼設置路由器 瀏覽:78
qt讀寫ini文件 瀏覽:910
什麼是離線導航數據 瀏覽:164
微信本地二手交易平台 瀏覽:726
什麼是創意編程啟蒙 瀏覽:988
用來存放被用戶刪除的文件 瀏覽:307
有哪些app有拼手氣紅包 瀏覽:635
數控車斜線和直線過渡圓怎麼編程 瀏覽:572
去掉文件校驗 瀏覽:427

友情鏈接