2013-04-18 18 views
1

場景:「我希望我的頁面在用戶輸入數據後自動重新加載」。 我嘗試搜索methode什麼是最好的。我選擇使用位置重新加載如何在ajax.jquery中管理location.reload

我的問題:

,當我在一段腳本使用location.reload它的工作。

$("#save").click(function(){ 
//ambil nilai-nilai dari masing-masing input 
wp = $("#wp").val(); 
if(wp==="- Jenis Werehouse -"){ 
alert("Pilih dulu jenis werehouse"); 
exit(); 
} 
posisi = $("#posisi").val(); 
pid = $("#pid").val(); 
if(pid==="- Produk ID -"){ 
alert("Pilih dulu ID Produk"); 
exit(); 
} 
pname = $("#pname").val(); 
if(pname==""){ 
alert("Pilih dulu ID Produk"); 
exit(); 
} 
pdate=$("#pdate").val(); 
if(pdate==""){ 
alert("Isi dulu tanggal inputnya"); 
exit(); 
} 
datanya = "&wp="+wp+"&posisi="+posisi+"&pid="+pid; 
datanya = datanya+"&pdate="+pdate+"&pname="+pname; 
//tampilkan status Updating dan animasinya 
$("#status").html("Dalam proses..."); 
$("#loading").show(); 
$.ajax({ 
type:'POST', 
url: "aksi.php", 
data: "op=save"+datanya, 
cache: false, 
success: function(msg){ 
if(msg=="error1"){ 
$("#status").html("Rak ini penuh"); 
}else if(msg=="sukses"){ 
$("#status").html("Data berhasil disimpan")}else{ 
$("#status").html("ERROR..penyimpanan data GAGAL!"); 
} 
$("#loading").hide(); 
} 
}); 
location.reload(); 
}); 

儘管頁面重新載入傳遞步驟顯示消息錯誤和成功。我忽視了一會兒,看看有什麼問題(根據我想c'z我重新加載頁面。)

,但我和我的完整的代碼合併這樣的波紋管

<script type="text/javascript"> 
var wp; 
var posisi; 
var pid; 
var pname; 
var pdate; 
var datanya; 
$(document).ready(function(){ 
    $("#save").click(function(){ 
    //ambil nilai-nilai dari masing-masing input 
    wp = $("#wp").val(); 
    if(wp==="- Jenis Werehouse -"){ 
    alert("Pilih dulu jenis werehouse"); 
    exit(); 
    } 
    posisi = $("#posisi").val(); 
    pid = $("#pid").val(); 
    if(pid==="- Produk ID -"){ 
    alert("Pilih dulu ID Produk"); 
    exit(); 
    } 
    pname = $("#pname").val(); 
    if(pname==""){ 
    alert("Pilih dulu ID Produk"); 
    exit(); 
    } 
    pdate=$("#pdate").val(); 
    if(pdate==""){ 
    alert("Isi dulu tanggal inputnya"); 
    exit(); 
    } 
    datanya = "&wp="+wp+"&posisi="+posisi+"&pid="+pid; 
    datanya = datanya+"&pdate="+pdate+"&pname="+pname; 
    //tampilkan status Updating dan animasinya 
    $("#status").html("Dalam proses..."); 
    $("#loading").show(); 
    $.ajax({ 
    type:'POST', 
    url: "aksi.php", 
    data: "op=save"+datanya, 
    cache: false, 
    success: function(msg){ 
    if(msg=="error1"){ 
    $("#status").html("Rak ini penuh"); 
    }else if(msg=="sukses"){ 
    $("#status").html("Data berhasil disimpan")}else{ 
    $("#status").html("ERROR..penyimpanan data GAGAL!"); 
    } 
    $("#loading").hide(); 
    } 
    }); 
    location.reload(); 
    }); 

    //jika tombol VIEW diklik 
    $("#view").click(function(){ 
    posisi = $("#posisi").val(); 
    $("#status").html("Mencari Data..."); 
    $("#loading").show(); 
    $.ajax({ 
    type:'POST', 
    url: "aksi.php", 
    data: "op=view&posisi="+posisi, 
    cache: false, 
    success: function(msg){ 
    if(msg=="error"){ 
    $("#status").html("Tidak ada produk di RAK ini"); 
    $("#loading").hide(); 
    } 
    else{//karna di server pembatas setiap data adalah | 
     //maka kita split dan akan membentuk array 
     data = msg.split("|");    
    //masukkan ke masing-masing textfield 
    $("#pname").val(data[0]); 
    $("#pdate").val(data[1]); 
    //hilangkan status dan animasi loading 
    $("#status").html(""); 
    $("#loading").hide(); 
     } 
     } 
    }); 
    }); 
    //jika tombol DEL diklik 
    $("#delete").click(function(){ 
    posisi = $("#posisi").val(); 
    alert("Anda yakin untuk mengosong data produk yang ada di rak ini"); 
    $("#status").html("Lagi didelete..."); 
    $("#loading").show(); 
    $.ajax({ 
    type:'POST', 
    url: "aksi.php", 
    data: "op=delete&posisi="+posisi, 
    cache: false, 
    success: function(msg){ 
    if(msg=="sukses"){ 
    $("#status").html("Delete Berhasil..."); 
    }else{ 
    $("#status").html("ERROR.."); 
    } 
    $("#loading").hide(); 
    } 
    }); 
    location.reload(); 
    }); 
    }); 
    </script> 

location.reload會讓unfuction它上面的腳本

在簡單問題 1.如何管理location.reload將在ajax.jquery函數完成後運行? 2.什麼是最好的方法,使用戶輸入自動將在頁面中看到?

請指教,用代碼將礦石欣賞

回答

2

使用 document.location.reload() 連同

$("#loading").hide(); 

成功函數內。你的成功應該看起來像。

success: function(msg){ 
    if(msg=="error1"){ 
    $("#status").html("Rak ini penuh"); 
    }else if(msg=="sukses"){ 
    $("#status").html("Data berhasil disimpan")}else{ 
    $("#status").html("ERROR..penyimpanan data GAGAL!"); 
    } 
    $("#loading").hide(); 
    document.location.reload(); 
    } 
+0

哇... wonderfulll .... TQ這麼多 – andricoga

+0

如何將這個功能後,如果使(MSG == 「ERROR1」){ $( 「#狀態」)。HTML(「泰愛泰INI penuh 「); document.location.reload();不跑? – andricoga