jquery版的Ajax就是將原生的js代碼以jquery的形式寫出來,方便了我們寫代碼
在jquery中已經提供了大量的Ajax網絡請求的封裝函數
函數名 | 含義 |
---|---|
$.ajax() | jQuery 底層 AJAX 實現,$.ajax() 返回其創建的 XMLHttpRequest 對象 |
$.load() | 載入遠程 HTML 文件代碼并插入至 DOM 中。 |
$.get() | 這是一個簡單的 GET 請求功能以取代復雜 $.ajax 。請求成功時可調用回調函數 |
$.getJSON() | 通過 HTTP GET 請求載入 JSON 數據。 |
$.getScript() | 通過 HTTP GET 請求載入并執行一個 JavaScript 文件。 |
$.post() | 通過遠程 HTTP POST 請求載入信息。 |
$.ajax
下面是基本參數
8801C098-5736-42DD-BC86-EE5DDE76944D.png
下面就寫個應用例子,該例子需要引入jquery,因此我們先引入jquery,jquery一定要在所寫代碼之上
js代碼
<script>
$.ajax({
type: "post",//數據提交類型
url: "danmu.php",//請求地址
data: {word:"abc",username:"ysh"},//發送數據
dataType: "json",//將數據轉換成json串(返回數據類型)
async: true,//是否異步,true為異步
// success為數據加載完后的回調函數
success: function(data){
for(i in data){
$("#shows").html(data[i]+"<br>");
}
}
});
</script>
html代碼
<div id="shows"></div>
damnu.php代碼
<?php
//save 保存
if(!empty($_POST['word'])){
$word = htmlspecialchars($_POST['word']);
$fp = fopen("danmu.txt","a+");
fwrite($fp,$word."\n");
fclose($fp);
echo json_encode(array($word));
}
?>
$.get( )
通過遠程 HTTP GET 請求載入信息。
這是一個簡單的 GET 請求功能以取代復雜 $.ajax 。請求成功時可調用回調函數。如果需要在出錯時執行函數,請使用 $.ajax。
23294BF3-428F-41AB-8603-D63AFE18D21B.png
getdanmu.php文件
<?php
//為前臺提供全部的彈幕數據
$fp = fopen("danmu.txt","r");
$danmu = array();
while(!feof($fp)){
$line=fgets($fp);
if($line){
$danmu[]=$line;
}
}
fclose($fp);
//json_encode 將字符串轉換成json格式
echo json_encode($danmu);
?>
js代碼
$.get("getdanmu.php",{},function(data,status){
console.log(data,status);
},"json")
最后顯示結果:
C0203F99-E446-46AC-97C0-642F1F41F518.png
$.post( )
通過遠程 HTTP POST 請求載入信息。
這是一個簡單的 POST 請求功能以取代復雜 $.ajax 。請求成功時可調用回調函數。如果需要在出錯時執行函數,請使用 $.ajax。參數與get相同
js 代碼
$.post("getdanmu.php",{word:"abc"},function(data,status){
console.log(data,status);
},"json");
結果:
85B21595-AD1F-47EA-8D6E-D9444580E690.png