JS ကျူတိုရီရယ်

JS ပင်မ JS မိတ်ဆက် JS ဘယ်သွားမလဲ။ JS Output JS ထုတ်ပြန်ချက် JS Syntax JS မှတ်ချက်များ JS အပြောင်းအလဲများ JS Let JS Const JS အော်ပရေတာများ JS ဂဏန်းသင်္ချာ JS တာဝန် JS ဒေတာအမျိုးအစားများ JS လုပ်ဆောင်ချက်များ JS အရာဝတ္ထုများ JS ပွဲများ JS စာတန်းများ JS စာတန်းနည်းလမ်းများ JS စာတန်းရှာဖွေမှု JS String Templates JS နံပါတ်များ JS နံပါတ်နည်းလမ်းများ JS Arrays JS Array Methods JS Array အမျိုးအစား JS Array Iteration JS Array Const JS ရက်စွဲများ JS ရက်စွဲပုံစံများ JS နေ့စွဲ နည်းလမ်းများ ရယူပါ။ JS ရက်စွဲ သတ်မှတ်နည်းလမ်းများ JS သင်္ချာ JS Random JS Booleans JS နှိုင်းယှဉ်မှုများ JS အခြေအနေများ JS Switch JS Loop For JS Loop For In JS Loop For Of JS Loop While JS Break JS Iterables JS အစုံများ JS Maps JS အမျိုးအစား JS အမျိုးအစား ပြောင်းခြင်း။ JS Bitwise JS RegExp JS အမှားများ JS နယ်ပယ် JS Hoisting JS တင်းကျပ်သောမုဒ် JS ဒီ Keyword ပါ။ JS Arrow Function JS သင်တန်းများ JS JSON JS Debugging JS စတိုင်လမ်းညွှန် JS အကောင်းဆုံးအလေ့အကျင့်များ JS အမှားများ JS စွမ်းဆောင်ရည် JS သီးသန့်စကားလုံးများ

JS ဗားရှင်းများ

JS ဗားရှင်းများ JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge JS သမိုင်း

JS အရာဝတ္ထုများ

Object အဓိပ္ပါယ်ဖွင့်ဆိုချက် Object Properties များ အရာဝတ္ထုနည်းလမ်းများ အရာဝတ္ထုပြသခြင်း။ အရာဝတ္ထု ဆက်စပ်ပစ္စည်းများ Object Constructors များ Object Prototypes Object Iterables အရာဝတ္ထုအစုံများ အရာဝတ္ထုမြေပုံများ Object ကိုးကား

JS လုပ်ဆောင်ချက်များ

လုပ်ဆောင်ချက် အဓိပ္ပါယ်ဖွင့်ဆိုချက် လုပ်ဆောင်ချက် ကန့်သတ်ချက်များ Function Invocation လုပ်ဆောင်ချက်ခေါ်ဆိုမှု လုပ်ဆောင်ချက်ကို အသုံးပြုပါ။ Function ပိတ်ခြင်းများ

JS သင်တန်းများ

အတန်းမိတ်ဆက် Class Inheritance အတန်းထဲမှာလည်း

JS Async

JS ပြန်ခေါ်မှုများ JS Asynchronous JS ကတိများ JS Async/Await

JS HTML DOM

DOM မိတ်ဆက် DOM နည်းလမ်းများ DOM စာရွက်စာတမ်း DOM ဒြပ်စင်များ DOM HTML DOM ပုံစံများ DOM CSS DOM အန်နီမေးရှင်းများ DOM ပွဲများ DOM ဖြစ်ရပ် နားထောင်သူ DOM လမ်းညွှန် DOM Nodes DOM စုစည်းမှုများ DOM Node စာရင်းများ

JS Browser BOM

JS Window JS မျက်နှာပြင် JS တည်နေရာ JS သမိုင်း JS Navigator JS Popup သတိပေးချက် JS Timing JS Cookies

JS ဝဘ် API များ

ဝဘ် API မိတ်ဆက် ဝဘ်ဖောင် API ဝဘ်သမိုင်း API ဝဘ်သိုလှောင်မှု API Web Worker API Web Fetch API ဝဘ် Geolocation API

JS AJAX

AJAX နိဒါန်း AJAX XMLHttp AJAX တောင်းဆိုချက် AJAX တုံ့ပြန်မှု AJAX XML ဖိုင် AJAX PHP AJAX ASP AJAX ဒေတာဘေ့စ် AJAX အပလီကေးရှင်းများ AJAX ဥပမာများ

JS JSON

JSON မိတ်ဆက် JSON Syntax JSON နှင့် XML JSON ဒေတာအမျိုးအစားများ JSON Parse JSON Stringify JSON အရာဝတ္ထုများ JSON Arrays JSON ဆာဗာ JSON PHP JSON HTML JSON JSONP

JS နှင့် jQuery

jQuery ရွေးချယ်မှုများ jQuery HTML jQuery CSS jQuery DOM

JS ဂရပ်ဖစ်

JS ဂရပ်ဖစ် JS Canvas JS Plotly JS Chart.js JS Google Chart JS D3.js

JS ဥပမာများ

JS ဥပမာများ JS HTML DOM JS HTML ထည့်သွင်းမှု JS HTML Objects JS HTML ပွဲများ JS Browser JS တည်းဖြတ်သူ JS လေ့ကျင့်ခန်းများ JS Quiz JS လက်မှတ်

JS ကိုးကားချက်များ

JavaScript Objects HTML DOM အရာဝတ္ထုများ


AJAX - XMLHttpRequest Object

AJAX ၏သော့ချက်မှာ XMLHttpRequest object ဖြစ်သည်။

  1. XMLHttpRequest object တစ်ခုကို ဖန်တီးပါ။
  2. ပြန်ခေါ်သည့် လုပ်ဆောင်ချက်ကို သတ်မှတ်ပါ။
  3. XMLHttpRequest object ကိုဖွင့်ပါ။
  4. ဆာဗာတစ်ခုထံ တောင်းဆိုချက်တစ်ခု ပေးပို့ပါ။

XMLHttpRequest Object

ခေတ်မီဘရောက်ဆာများအားလုံးသည် XMLHttpRequestအရာဝတ္ထုကို ပံ့ပိုးပေးသည်။

မြင်ကွင်း နောက်ကွယ် XMLHttpRequestရှိ ဝဘ်ဆာဗာတစ်ခုနှင့် ဒေတာဖလှယ်ရန် အရာဝတ္ထုကို အသုံးပြုနိုင်သည်။ ဆိုလိုသည်မှာ စာမျက်နှာတစ်ခုလုံးကို ပြန်မတင်ဘဲ ဝဘ်စာမျက်နှာ၏ အစိတ်အပိုင်းများကို အပ်ဒိတ်လုပ်ရန် ဖြစ်နိုင်သည်။


XMLHttpRequest Object တစ်ခုကို ဖန်တီးပါ။

ခေတ်မီဘရောက်ဆာအားလုံး (Chrome၊ Firefox၊ IE၊ Edge၊ Safari၊ Opera) တွင် built-in XMLHttpRequestအရာဝတ္ထုတစ်ခုရှိသည်။

XMLHttpRequestအရာဝတ္ထု တစ်ခုကို ဖန်တီးရန်အတွက် အထားအသို-

variable = new XMLHttpRequest();

Callback Function ကို သတ်မှတ်ပါ။

ပြန်ခေါ်သည့် လုပ်ဆောင်ချက်သည် အခြားလုပ်ဆောင်ချက်တစ်ခုသို့ ကန့်သတ်ချက်တစ်ခုအဖြစ် ပေးပို့သည့် လုပ်ဆောင်ချက်ဖြစ်သည်။

ဤကိစ္စတွင်၊ ပြန်လည်ခေါ်ဆိုမှုလုပ်ဆောင်ချက်တွင် တုံ့ပြန်မှုအဆင်သင့်ဖြစ်သောအခါ လုပ်ဆောင်ရန် ကုဒ်ပါဝင်သင့်သည်။

xhttp.onload = function() {
  // What to do when the response is ready
}

တောင်းဆိုချက်တစ်ခုပေးပို့ပါ။

ဆာဗာတစ်ခုထံ တောင်းဆိုချက်တစ်ခုပေးပို့ရန်၊ သင်သည် XMLHttpRequestအရာဝတ္ထု၏ open() နှင့် send() နည်းလမ်းများကို အသုံးပြုနိုင်သည်။

xhttp.open("GET", "ajax_info.txt");
xhttp.send();

ဥပမာ

// Create an XMLHttpRequest object
const xhttp = new XMLHttpRequest();

// Define a callback function
xhttp.onload = function() {
  // Here you can use the Data
}

// Send a request
xhttp.open("GET", "ajax_info.txt");
xhttp.send();

Domains များကို ဖြတ်ကျော်ဝင်ရောက်ပါ။

လုံခြုံရေးအရ၊ ခေတ်မီဘရောက်ဆာများသည် ဒိုမိန်းများတစ်လျှောက် ဝင်ရောက်ခွင့်မပြုပါ။

ဆိုလိုသည်မှာ ဝဘ်စာမျက်နှာနှင့် ၎င်းတင်ရန်ကြိုးစားသော XML ဖိုင်နှစ်ခုစလုံးသည် တူညီသောဆာဗာပေါ်တွင် တည်ရှိနေရမည်ဖြစ်သည်။

W3Schools ပေါ်ရှိ နမူနာများသည် W3Schools ဒိုမိန်းတွင်ရှိသော ဖွင့်ထားသော XML ဖိုင်များအားလုံး။

အထက်ဖော်ပြပါ ဥပမာကို သင့်ကိုယ်ပိုင် ဝဘ်စာမျက်နှာတစ်ခုတွင် အသုံးပြုလိုပါက၊ သင်တင်သည့် XML ဖိုင်များသည် သင့်ကိုယ်ပိုင်ဆာဗာပေါ်တွင် တည်ရှိနေရပါမည်။



XMLHttpRequest Object Methods

Method Description
new XMLHttpRequest() Creates a new XMLHttpRequest object
abort() Cancels the current request
getAllResponseHeaders() Returns header information
getResponseHeader() Returns specific header information
open(method, url, async, user, psw) Specifies the request

method: the request type GET or POST
url: the file location
async: true (asynchronous) or false (synchronous)
user: optional user name
psw: optional password
send() Sends the request to the server
Used for GET requests
send(string) Sends the request to the server.
Used for POST requests
setRequestHeader() Adds a label/value pair to the header to be sent

XMLHttpRequest Object Properties

Property Description
onload Defines a function to be called when the request is recieved (loaded)
onreadystatechange Defines a function to be called when the readyState property changes
readyState Holds the status of the XMLHttpRequest.
0: request not initialized
1: server connection established
2: request received
3: processing request
4: request finished and response is ready
responseText Returns the response data as a string
responseXML Returns the response data as XML data
status Returns the status-number of a request
200: "OK"
403: "Forbidden"
404: "Not Found"
For a complete list go to the Http Messages Reference
statusText Returns the status-text (e.g. "OK" or "Not Found")

onload အိမ်ခြံမြေ

XMLHttpRequestရာဝတ္တုဖြင့် တောင်းဆိုချက်မှ အဖြေတစ်ခုရရှိသောအခါတွင် လုပ်ဆောင်ရန် ပြန်ခေါ်သည့်လုပ်ဆောင်ချက်ကို သင်သတ်မှတ်နိုင်သည်။

လုပ်ဆောင်ချက်ကို အရာဝတ္ထု ၏ onloadပိုင်ဆိုင်မှု တွင် သတ်မှတ်ထားသည် -XMLHttpRequest

ဥပမာ

xhttp.onload = function() {
  document.getElementById("demo").innerHTML = this.responseText;
}
xhttp.open("GET", "ajax_info.txt");
xhttp.send();

ပြန်ခေါ်ခြင်း လုပ်ဆောင်ချက်များစွာ

သင့်တွင် ဝဘ်ဆိုက်တစ်ခုတွင် AJAX လုပ်ဆောင်စရာတစ်ခုထက်ပိုပါက၊ XMLHttpRequestအရာဝတ္ထုကိုလုပ်ဆောင်ရန်အတွက် လုပ်ဆောင်ချက်တစ်ခုနှင့် AJAX လုပ်ဆောင်မှုတစ်ခုစီအတွက် ပြန်လည်ခေါ်ဆိုမှုတစ်ခုပြုလုပ်သင့်သည်။

လုပ်ဆောင်ချက်ခေါ်ဆိုမှုတွင် တုံ့ပြန်မှုအဆင်သင့်ဖြစ်သောအခါတွင် ခေါ်ဆိုရန် URL နှင့် မည်သည့်လုပ်ဆောင်ချက် ပါဝင်သင့်သည်။

ဥပမာ

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) {
  // action goes here
}
function myFunction2(xhttp) {
  // action goes here
}

onreadystatechange အိမ်ခြံမြေ

readyStateပိုင်ဆိုင်မှုသည် XMLHttpRequest ၏ အခြေအနေကို ထိန်းထားသည်

ReadyState onreadystatechangeပြောင်းလဲသောအခါတွင် လုပ်ဆောင်ရန် ပြန်ခေါ်သည့် လုပ်ဆောင်ချက်ကို ပိုင်ဆိုင်မှုက သတ်မှတ်သည်။

statusပိုင်ဆိုင်မှုနှင့် ဂုဏ်သတ္တိများသည် XMLHttpRequest object statusTextအခြေအနေကို ထိန်းထားသည်။

Property Description
onreadystatechange Defines a function to be called when the readyState property changes
readyState Holds the status of the XMLHttpRequest.
0: request not initialized
1: server connection established
2: request received
3: processing request
4: request finished and response is ready
status 200: "OK"
403: "Forbidden"
404: "Page not found"
For a complete list go to the Http Messages Reference
statusText Returns the status-text (e.g. "OK" or "Not Found")

ReadyState onreadystatechangeပြောင်းလဲသည့်အခါတိုင်း function ကိုခေါ်သည်။

readyState4 နှင့် 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();
}

ReadyState onreadystatechangeတွင် ပြောင်းလဲမှုတစ်ခုစီအတွက် တစ်ကြိမ် (1-4) ဖြစ်ရပ်ကို လေးကြိမ် (1-4) အစပျိုးသည်။