[英]Javascript jquery not refreshing the div
我有這段代碼HTML
<form id="myForm" method="post" onsubmit="return updateValues(this)">
<input id="id" type="hidden" value="<?php echo $row[0]; ?>" />
<input type="text" id="dd" value="<?php echo $row[1];?>" />
<input type="text" id="da" value="<?php echo $row[2];?>" />
<input type="text" id="db" value="<?php echo $row[3];?>" />
<input type="submit" id="submit" value="Save Changes" />
</form>
<div id="successNote"></div>
並使用javascript將值傳遞到php文件以執行更新。
function updateValues(thisForm)
{
if (thisForm == "")
{
document.getElementById("successNote").innerHTML = "please fill form.";
return;
}
var id = document.getElementById('id').value;
var dd = document.getElementById('dd').value;
var da = document.getElementById('da').value;
var db = document.getElementById('db').value;
var str = 'id='+id+'&dd='+dd+'&da='+da+'&db='+db;
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else
{
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("successNote").innerHTML = "Form has been updated";
alert('Form has been updated successfully!');
}
}
xmlhttp.open("GET","update_myForm.php?"+str,true);
xmlhttp.send();
}
我的JavaScript代碼將這些值傳遞給php文件(PHP很好地更新了這些值),但是,當它返回html頁面時,它會顯示警報,而在按下ok時,它將刷新整個頁面。 我希望它僅刷新div而不刷新整個頁面。 我不知道我在做什么錯,任何建議都會受到贊賞。
您錯過了函數中的return false
:
function updateValues(thisForm)
{
// your code...
xmlhttp.send();
return false;
}
你可以試試這個嗎
<form id="myForm" method="post" onsubmit="return updateValues(this)">
<input id="id" type="hidden" value="<?php echo $row[0]; ?>" />
<input type="text" id="dd" value="<?php echo $row[1];?>" />
<input type="text" id="da" value="<?php echo $row[2];?>" />
<input type="text" id="db" value="<?php echo $row[3];?>" />
<input type="submit" id="submit" value="Save Changes" />
</form>
<div id="successNote"></div>
<script>
function updateValues(thisForm)
{
if (thisForm == "")
{
document.getElementById("successNote").innerHTML = "please fill form.";
return false;
}
var id = document.getElementById('id').value;
var dd = document.getElementById('dd').value;
var da = document.getElementById('da').value;
var db = document.getElementById('db').value;
var str = 'id='+id+'&dd='+dd+'&da='+da+'&db='+db;
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else
{
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("successNote").innerHTML = "Form has been updated";
alert('Form has been updated successfully!');
}
}
xmlhttp.open("GET","update_myForm.php?"+str,true);
xmlhttp.send();
return false;
}
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.