AJAX - အင်္ဂတ်ကြား အကူအညီ အိုက်အိုင်
- ပြီးအော် AJAX အစီရင်ခံ
- နောက်အော် AJAX အော်ချီ
XMLHttpRequest အပေါင်းအချုပ် သည် AJAX အခြေခံ ဖြစ်သည်
- 创建 XMLHttpRequest 对象
- 定义回调函数
- XMLHttpRequest အပေါင်းအချုပ် ကို ဖော်ထုတ် လုပ်ဆောင် ရန်
- ဝိုက်တာ ပြည်ထောင်စု ကို ဝိုက်တာ ကို လွှတ်တင် လုပ်ဆောင် ရန်
XMLHttpRequest 对象
အသုံးပြု ဖို့ ဝိုက်တာ ပြည်ထောင်စု အား လုံးဝ ကူညီ ပြီ XMLHttpRequest 对象。
XMLHttpRequest အပေါင်းအချုပ် ကို ဝိုက်တာ ပြည်ထောင်စု နှင့် ဝိုက်တာ ပြည်ထောင်စု ကို နောက်ခံ အခြေအနေ တွင် လွှတ်တင် လုပ်ဆောင် နိုင်သည်။ ဤကြောင့် ဝိုက်တာ ပြည်ထောင်စု အချို့ အစိတ်အပိုင်း ကို အသုံးပြု နိုင်သည်၊ ဝိုက်တာ ပြည်ထောင်စု အများအပြား ကို အပြန်လည် ဆက်လက် ဆောင်ရွက် လုပ်ဆောင် ရန် လိုမည်မဟုတ်ပါ။
创建 XMLHttpRequest 对象
所有现代浏览器(Chrome、Firefox、IE、Edge、Safari、Opera)都有内置的 XMLHttpRequest 对象。
创建 XMLHttpRequest 对象的语法:
variable = new XMLHttpRequest();
定义回调函数
回调函数是作为参数传递给另一个函数的函数。
在这种情况下,回调函数应包含响应准备就绪时要执行的代码。
xhttp.onload = function() { // 当响应准备就绪时要做什么 }
发送请求
如需向服务器发送请求,您可以使用 XMLHttpRequest 对象的 open()
和 send()
方法:
xhttp.open("GET", "ajax_info.txt"); xhttp.send();
实例
// 创建 XMLHttpRequest 对象 const xhttp = new XMLHttpRequest(); // 定义回调函数 xhttp.onload = function() { // 您可以在这里使用数据 } // 发送请求 xhttp.open("GET", "ajax_info.txt"); xhttp.send();
跨域访问(Access Across Domains)
出于安全原因,现代浏览器不允许跨域访问。
ထိုကြောင့် ဝတ္ထုပေါင်း နှင့် သင် အသုံးပြုလိုက်သော XML ဖိုင် သည် အတူတကွ အကိုင်း ကြီး တွင် ရှိသည့် အခြေစိုက် အကိုင်း ကြီး တွင် ရှိသည့် အခြေစိုက် အကိုင်း ကြီး တွင် ရှိသည်。
CodeW3C.com ပေါ်တွင် အကျိုးသမား အား အသုံးပြုထားသော အချက်အလက် အား တင်သွင်းထားသော XML ဖိုင် သည် CodeW3C.com အခြေစိုက် ပုံစံ တွင် ရှိသည်。
သင်ကိုယ်တိုင် ဝတ္ထုပေါင်း တစ်ခု တွင် အားပေးထားသော အကျိုးသမား အား အသုံးပြုလိုက်လျှင် သင် တင်သွင်းထားသော XML ဖိုင် သည် သင်၏ ဝတ္ထုပေါင်း ကြီး တွင် ရှိသည့် အကိုင်း ကြီး အပေါ်မှ တင်သွင်းပါ။
XMLHttpRequest အကိုင်း နည်းလမ်း
နည်းလမ်း | ဖော်ပြ |
---|---|
new XMLHttpRequest() | အခြား XMLHttpRequest အကိုင်း ကို ဖန်တီးပါ။ |
abort() | အချိန်အတွင်း ဖြစ်ပေါ်သော အကောင်းကြီး ကို ဖျက်သိမ်းပါ။ |
getAllResponseHeaders() | အချက်အလက် ကို ဖော်ပြပါ။ |
getResponseHeader() | ဖော်ပြထားသော အချက်အလက် ကို ပြန်အပြန် ဖော်ပြပါ။ |
open(method, url, async, user, psw) |
အကောင်းကြီး ကန့်သတ်ပါ။
|
send() | ပြောင်းလဲသွင်းထားသော အကောင်းကြီး သတ်မှတ်ထားသော အချိန်အတွင်း ဖြေရှင်းပါ။ ဖော်ပြပါသည် - GET အကောင်းကြီး |
send(string) | ပြောင်းလဲသွင်းထားသော အကောင်းကြီး သတ်မှတ်ထားသော အချိန်အတွင်း ဖြေရှင်းပါ။ ဖော်ပြပါသည် - POST အကောင်းကြီး |
setRequestHeader() | တင်သွင်းထားသော အချက်အလက် / အမှတ် ကို တင်သွင်းထားသော အချက်အလက် သို့ ထပ်ထည့်ပါ。 |
XMLHttpRequest အကိုင်း အချက်အလက်
အချက်အလက် | ဖော်ပြ |
---|---|
onload | တင်သွင်းထားသော (တင်သွင်း) အကောင်းကြီး သတ်မှတ်ထားသော အချိန်အတွင်း ဖြေရှင်းသည့် ပုံစံကို ဖော်ပြပါသည်。 |
onreadystatechange | လုပ်ငန်းအခြေအနေ သတ်မှတ်ထားသော အကိုင်း လက်တွေ့သော အချိန်အတွင်း ဖြေရှင်းသည့် ပုံစံကို ဖော်ပြပါသည်。 |
readyState |
XMLHttpRequest အချက်အလက် ကို သိသိသာသာ ကျန်ထားပါ
|
responseText | အချက်အလက် အဖြစ် တုံ့ပြန် |
responseXML | XML အချက်အလက် အဖြစ် တုံ့ပြန် |
status |
မိတ်ဆက်သတင်း အချက်အလက် ကို ပြန်လည်ပေးသည်
ပြင်ဆင်ထားသော စာရင်း ကို ကိုက်ထားသည် Http မေးခွန်း ကိုးကားချက် |
statusText | အချက်အလက် ကို ပြန်လည်ပေးပါ |
onload အချက်အလက်
XMLHttpRequest အချက်အလက် ကို အပြင်အဆင် ပြုလုပ်ပါ
XMLHttpRequest အချက်အလက် အတွက် onload
အချက်အလက် အတွက် အပြောင်းလဲ
实例
xhttp.onload = function() { document.getElementById("demo").innerHTML = this.responseText; } xhttp.open("GET", "ajax_info.txt"); xhttp.send();
အပြင်အဆင် အပြောင်းလဲ
ဝီကီစ် လုပ်ဆောင် များ အပေါ် အခြား ဝီကီစ် လုပ်ဆောင် များ ကို ဖွဲ့စည်းပါ
ပြောင်းလဲသည် ပြီး တုံ့ပြန်ခြင်း ပြုလုပ်သည်
实例
loadDoc("url-1", myFunction1); loadDoc("url-2", myFunction2); function loadDoc(url, cFunction) { const xhttp = new XMLHttpRequest(); xhttp.onload = function() {cFunction(this);} xhttp.open("GET", url); xhttp.send(); } function myFunction1(xhttp) { // အခြား လုပ်ဆောင် } function myFunction2(xhttp) { // အခြား လုပ်ဆောင် }
onreadystatechange အချက်အလက်
readyState
XMLHttpRequest အချက်အလက် ကို ကျန်ထားပါ
onreadystatechange
အချက်အလက် ကို အပြင်အဆင် အပြောင်းလဲသောအခါ အပြောင်းလဲသည်
status
အချက်အလက် နှင့် statusText
XMLHttpRequest အချက်အလက် ကို ကျန်ထားပါ
အချက်အလက် | ဖော်ပြ |
---|---|
onreadystatechange | အခြား အချက်အလက် ပြောင်းလဲသောအခါ ခေါ်ခဲ့သည် |
readyState |
XMLHttpRequest အချက်အလက် ကို သိသိသာသာ ကျန်ထားပါ
|
status |
မိတ်ဆက်သတင်း အချက်အလက် ကို ပြန်လည်ပေးသည်
ပြင်ဆင်ထားသော စာရင်း ကို ကိုက်ထားသည် Http မေးခွန်း ကိုးကားချက် |
statusText | 返回状态文本(比如 "OK" 或 "Not Found")。 |
每次 readyState 改变时都会调用 onreadystatechange 函数。
当 readyState 为 4
且 status 为 200
时,响应就绪:
实例
function loadDoc() { const xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.responseText; } }; xhttp.open("GET", "ajax_info.txt"); xhttp.send(); }
onreadystatechange 事件被触发了四次(1-4),每次 readyState 变化一次。
- ပြီးအော် AJAX အစီရင်ခံ
- နောက်အော် AJAX အော်ချီ