Formatted TextBox
ဒီေန႔ ရံုးမွာ program ေရးေနရင္းနဲ႔ entry form မွာ သံုးမယ့္ textbox တခ်ိဳဳ႕မွာ ကိုယ္လိုခ်င္တဲ႔ charactor ကိုပဲ ေရြးၿပီး ရိုက္ခြင့္ျပဳခ်င္တယ္။ ခြင့္မျပဳတဲ႔ charactor ေတြကို ရိုက္ရင္ ဘာမွ မေပၚေစခ်င္ဘူး။ အဲ့ဒီလို လုပ္ဖို႔ လိုလာတယ္။ ဥပမာဗ်ာ…. textbox ထဲမွာ ‘#’, ‘?’, ‘*’ only ပဲ ရိုက္ခြင့္ျပဳခ်င္တယ္ေပါ့။ အရင္တုန္းက project အေဟာင္းမွာေတာ့ numeric only ပဲရိုက္လို႔ရတဲ႔ textbox မ်ိဳးလုပ္ထားတာ ရွိတယ္။ အဲ့ဒီမွာ လုပ္တုန္းက htc file ကို သံုးၿပီးလုပ္ထားတာ။ htc က Firefox မွာ support မလုပ္ဘူး။ ဒါေၾကာင့္ အခုတစ္ေခါက္ေတာ့ ရို္းရိုး javascript နဲ႔ပဲ ထိန္းဖို႔ လုပ္လိုက္တယ္။ ဒါနဲ႔ Google အားကိုးလို႔ Internet ထဲမွာ ရွာေဖြဖတ္ရႈၿပီး ေရးလုိက္ပါတယ္။ browser အားလံုး support လုပ္ေအာင္ ေရးရတာလည္း နည္းနည္းေတာ့ လုပ္ေပါက္ကပ္သား။
javascript code
function numericTextBox(e) {
e = e || window.event;
var key = e.which || e.keyCode;
if ((!e.shiftKey && (key > 47 && key < 58)) || key == 8 || key == 46 || key == 35 || key == 36 || key == 37 || key == 39) {
return true;
} else {
if (e.preventDefault) e.preventDefault();
e.returnValue = false;
return false;
}
}
function FormatedTextBox(e) {
e = e || window.event;
var key = e.which || e.keyCode;
if ((e.shiftKey && (key == 56 || key == 51 || key == 52)) || key == 8 || key == 46 || key == 35 || key == 36 || key == 37 || key == 39) {
return true;
} else {
if (e.preventDefault) e.preventDefault();
e.returnValue = false;
return false;
}
}
aspx code
<asp:TextBox runat=”server” Width=”200px” onkeydown=”return FormatedTextBox(event)“></asp:TextBox>
<asp:TextBox runat=”server” Width=”200px” onkeydown=”return numericTextBox(event)“></asp:TextBox>
Javascript မွာ key code number ေတြကို အေသးစိတ္သိခ်င္ရင္ ဒီ(http://unixpapa.com/js/key.html) မွာ ၾကည့္လို႔ရပါတယ္။
Javascript event object အေၾကာင္းကိုေတာ့ ဒီ(http://www.exforsys.com/tutorials/javascript/javascript-event-object.html) ကေနၾကည့္လို႔ ရပါတယ္။