Postingan lainnya
Kelas Premium!
Belajar bikin website dari nol sekarang
Gunakan kupon "lebihcepat" untuk diskon 25%!
Ajax error saat input cepat
misi gan, ane dsni iseng mau bikin web pulsa online, yg jadi kendala di saat input nomor hp cepat option produk ga tampil, tapi kalo input nomor hp lambat atau santuy gtu option produk muncul, ada yg salah ya dari kode saya, kode sendiri + referensi dri google hehhe
<input onchange="ajaxProduct(this.value)" oninput="ajaxProduct(this.value)" type="text" class="form-control" name="hp" maxlength="20" value="" autocomplete="off" required>
<select class="form-control" name="kode" id="kode" required>
<option value="" selected="">Pilih salah satu</option>
</select>
var myAjax;
function ajaxProduct(id){
if(id.substr(0, 3)=='+62') {
id = "0" + id.substr(3, id.length);
}
if(id.substr(0, 2)=='62') {
id = "0" + id.substr(2, id.length);
}
if( (id.length>=4 && id.charAt(0)=='0') || (id.length>=3 && id.charAt(0)=='9') ){
myAjax = makeAjax();
var url="https://www.website.com/functions/inc/cekproduk.php?nomor=";
url=url+id;
myAjax.onreadystatechange=stateChangedProduct;
myAjax.open("GET",url,true);
myAjax.send(null);
toggle(id);
}
else{
document.getElementById("kode").innerHTML = "<option selected>Pilih nominal</option>";
}
}
function makeAjax(){
if (window.XMLHttpRequest){
return new XMLHttpRequest();
}
if (window.ActiveXObject){
return new ActiveXObject("Microsoft.XMLHTTP");
}
return null;
}
function stateChangedProduct(){
var data;
if (myAjax.readyState==4 && myAjax.status==200){
data=myAjax.responseText;
if(data.length>=0){
document.getElementById("kode").innerHTML = data
}else{
document.getElementById("kode").value = "<option selected>Pilih nominal</option>";
}
}
}
di url https://www.website.com/functions/inc/cekproduk.php?nomor= itu berisi function untuk cek nomor, contoh https://www.website.com/functions/inc/cekproduk.php?nomor=082261788475 nnti menampilkan produk tel*omsel dll sesuai provider, makasih sebelumnya.
1 Jawaban:
coba ganti ke onkeyup <pre> <input onkeyup="ajaxProduct(this.value)" type="text" class="form-control" name="hp" maxlength="20" value="" autocomplete="off" required> </pre>
Tanggapan
belom bisa juga om, jdi pas nginput kode nya kudu berenti dlu sampe option nya keluar, cth 082261788475 pas 0822 itu berenti nah kalo option nya dah keluar baru lanjut lagi tapi pas kelar input option nya blank, ane udh ganti cara sih cuma kalo masih penasaran ma kode ini bisa di bantu heheheh
kurang paham saya sama maksudnya.