首先,索裏,我的英語...AJAX的代碼不工作
- 的 「FUNC 0」 是阿賈克斯。
- 「func 1」是每1000毫秒刷新ajax代碼的代碼。當代碼工作時刷新refesh.php頁面並將其上的文本發送到「bbb」div。
- 「func 2」是成員編寫文本然後將文本發送到send.php頁面(文本發送到mySQL)然後在「aaa」div中顯示文本的代碼。
有人可以幫我瞭解爲什麼代碼不工作?
- 如果我在頁面中只放入「func 0」和「func 1」,一切正常。
- 如果我只在「func 0」和「func 2」頁面中放置,所有東西都可以正常工作。
- 但如果我把頁面上的所有3功能,它不起作用。我不知道爲什麼當成員試圖發送文本發送文本到MySQL(func 2),但它顯示文本refresh.php(func 1)「aaa」 div(func 2),而不是顯示成員發送到「aaa」div的文本。
我希望你能找出什麼問題了,我有一個有點難以解釋
這是代碼:
<!--- func 0 --->
<script>
function refresh(name, url, info, type)
{
var str;
if (type=="send") {
str = document.forms["aaa"]["txt"].value;
}
if (type=="send" && str=="")
{
document.getElementById(name).innerHTML="";
return;
}
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(name).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET",url+"?info="+str,true); // send the text to page
xmlhttp.send();
return false;
}
</script>
<!--- end - func 0 --->
<!--- func 1 --->
<script type="text/javascript">
setInterval("refresh('bbb', 'refresh.php', '', 'refresh')", "1000");
</script>
<div id='bbb'> div to refresh at 1000 ms </div>
<!--- end - func 1 --->
<!--- func 2 --->
<form name='aaa' onsubmit="return refresh('aaa', 'send.php', '', 'send');" method='post'>
txt: <input type='text' name='txt' autofocus='autofocus'> <input type='submit' value=' send '>
</form>
<div id='aaa'> div that <b>*send*</b> txt to sql </div>
<!--- end - func 2 --->
對於故障排除,零件/零件沒什麼意義。如果這是以jsFiddle的形式,那將會容易得多。請嘗試設置一個。 – DevlshOne
@DevlshOne AJAX同源策略不會阻止它工作嗎? – Barmar
你在任何地方遇到任何錯誤?什麼不正確? – rednaw