ASP - AJAX နှင့် ASP

AJAX ကို အများပြား မျက်နှာပြင် ပုံပေါင်း အား အကူအညီ ပြုပေး သည်။

AJAX ASP အမှတ်ပြုချက်

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

အမှတ်ပြုချက်

အေ - အီ အစား အက်ဒေးလ် ပုံပေါင်းတွင် အရာဝတ္တု ရိုက်ထား လိုသည်။

အမည်

အကြောင်းအချက်

သင့် မူးယစ်လိုက် အရိုဝတ္တု ပုံပေါင်း

အမှတ်ပြုချက် - HTML စာမေးသတ္တပ်

အသုံးပြုသူ အရာဝတ္တု ပုံပေါင်းတွင် စာလုံး ရိုက်ထား သောအခါ "showHint()" ဖိုင် အား လုပ်ဆောင်ပါသည်။ အဆိုပါ ဖိုင် အား "onkeyup" အချင်းချင်း အခြေအနေ ဖြင့် ဖြေဖြူးသည်။

<!DOCTYPE html>
<html>
<head>
<script>
function showHint(str)
{
if (str.length==0)
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  }
if (window.XMLHttpRequest)
  {// အဆိုပါ အမည် IE7+, Firefox, Chrome, Opera, Safari အတွက် အုပ်ချုပ်ခြင်း
  xmlhttp=new XMLHttpRequest();
  }
else
  {// အဆိုပါ အမည် IE6, IE5 အတွက် အုပ်ချုပ်ခြင်း
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","gethint.asp?q="+str,true);
xmlhttp.send();
}
</script>
</head
<body>
<p><b>အမှတ်ပြုထားသော အကြောင်းရင်းအရာကို အရာဝင်အသုံးပြုထားသော အရာများတွင် အမှတ်ပြုပါ:</b></p>
<form>
First name: <input type="text" onkeyup="showHint(this.value)" size="20">
</form>
<p>အကြောင်းချက်: <span id="txtHint"></span></p>
</body>
</html>

အရင်းအမြစ် စကားလုံး ဖော်ပြချက် :

အမှတ်ပြုထားသော အရာမရှိဘဲ (str.length==0) ဖြစ်လျှင် ပုဂ္ဂိုလ်ကြွယ်က အခြေခံအရာ txtHint အရာကို ဖျက်သိမ်းလိမ့်မည် နှင့် ပုဂ္ဂိုလ်ကြွယ်ကို ဖြိုးပေးလိမ့်မည်

အမှတ်ပြုထားသော အသုံးပြုထားသော အရာမရှိဘဲ (str.length==0) ဖြစ်လျှင် showHint() ပုဂ္ဂိုလ်ကြွယ်က အောက်ပါ အဆောင်ရွက်များ လုပ်ဆောင်လိမ့်မည်:

  • XMLHttpRequest အင်တာနက်စက်လုပ်ငန်းကို ဆောက်လုပ်ထားသည်
  • ဆောက်လုပ်ထားသော ပြုံးအင်တာနက်စက်လုပ်ငန်းကို ပြုံးအင်တာနက်စက်လုပ်ငန်းကြောင့် ပြီးခဲ့သော အချိန်တွင် လုပ်ဆောင်ရန် ပြုလုပ်ထားသော ပုဂ္ဂိုလ်ကြွယ်
  • ဆောက်လုပ်ထားသော ဖိုင်ကို ဆောက်လုပ်ထားသော ပြုံးအင်တာနက်စက်လုပ်ငန်းကို လက်ခံရသည်
  • URL အစိတ်အကိုးအဝန်းတွင် ထပ်ပေါက်ထားသော ပုံစံ (q) အပါအဝင် အမှတ်ပြုထားသော အရာကို သတိပြုပါ。

ASP ဖိုင်

အရင်းမြစ်အင်တာနက်စက်လုပ်ငန်းတွင် အမည် "gethint.asp" ရှိ အဆိုပါ ASP ဖိုင်ကို လက်ခံရသည်。

"gethint.asp" တွင် အရင်းအမြစ် စကားလုံး မှာ အမည် အဖွဲ့ ကို စစ်ဆေးပြီး ဘားမြား ကို ဘားပြား ကို အပြန် ပြန်ပေးလိမ့်မည် :

<%
response.expires=-1
dim a(30)
'အမည် အဖွဲ့ အား အပြည့်အဝပြု
a(1)="Anna"
a(2)="Brittany"
a(3)="Cinderella"
a(4)="Diana"
a(5)="Eva"
a(6)="Fiona"
a(7)="Gunda"
a(8)="Hege"
a(9)="Inga"
a(10)="Johanna"
a(11)="Kitty"
a(12)="Linda"
a(13)="Nina"
a(14)="Ophelia"
a(15)="Petunia"
a(16)="Amanda"
a(17)="Raquel"
a(18)="Cindy"
a(19)="Doris"
a(20)="Eve"
a(21)="Evita"
a(22)="Sunniva"
a(23)="Tove"
a(24)="Unni"
a(25)="Violet"
a(26)="Liza"
a(27)="Elizabeth"
a(28)="Ellen"
a(29)="Wenche"
a(30)="Vicky"
'URL မှ အခြား အခြေအနေ အကယ်၍ ထုတ်ပြန်ချက်
q=ucase(request.querystring("q"))
'အရေအတွက် q>0 အခါ အော်ဂန်း အဖွဲ့များ မှ အဆိုပါ အမှတ်အသား များ ရှာဖွေလိမ့်မည်
if len(q)>0 then
  hint=""
  for i=1 to 30
    if q=ucase(mid(a(i),1,len(q))) then
      if hint="" then
        hint=a(i)
      else
        hint=hint & " , " & a(i)
      end if
    end if
  next
end if
'အဆိုပါ အမှတ်အသား မရှားမီ အခြား အဆိုပါ အခြေအနေ ထုတ်ပြန်ချက်
'သို့မဟုတ် အခြား အခြေအနေ များ ထုတ်ပြန်ချက်
if hint="" then
  response.write("no suggestion")
else
  response.write(hint)
end if
%>

အရင်းအမြစ် စကားလုံး ဖော်ပြချက် :

ဂျပန်စကားလုံး တစ်ခုခု စကားရပ် တွင် ပို့ပေးခဲ့လျှင်(မည်သည့် အခါမှာ strlen($q) အရေအတွက် 0 ထက် ပိုသည့်) အခါမှာ ဖြစ်ပေါ်လာသည့်အခါ :

  • 查找匹配来自 JavaScript 的字符的姓名
  • 如果未找到匹配,则将响应字符串设置为 "no suggestion"
  • 如果找到一个或多个匹配姓名,则用所有姓名设置响应字符串
  • 把响应发送到占位符 "txtHint"