我有一個複選框,無論何時檢查它調用另一個PHP腳本使用Ajax,現在在PHP腳本我有一個按鈕3個文本框,每當按下按鈕,Ajax將執行調用另一個PHP腳本。所有的都在同一個頁面預製!它就像這個是否有可能使用Ajax調用另一個Ajax內的php腳本?
PHP - >阿賈克斯 - > PHP - >阿賈克斯 - > PHP
是否有可能,或過多的處理?
我的第一個Ajax是:
<script type = 'text/javascript'>
function load(cb, pos)
{
if (cb.checked == false)
{
document.getElementById(pos).innerHTML="";
return;
}
if (window.XMLHttpRequest)
xmlhttp = new XMLHttpRequest();
else
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
document.getElementById(pos).innerHTML = xmlhttp.responseText;
}
xmlhttp.open('GET', "trying.inc.php?pass='true'", true);
xmlhttp.send();
}
</script>
第二阿賈克斯是在 「Tring.inc.php」:
<script type = 'text/javascript'>
function check()
{
if (window.XMLHttpRequest)
xmlhttp = new XMLHttpRequest();
else
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
document.getElementById('adiv').innerHTML = xmlhttp.responseText;
}
Parameters = "OldPass="+document.getElementById('OldPass').value+"&newPass="+document.getElementById('newPass').value+"&Confirm="+document.getElementById('ConfirmPass').value;
xmlhttp.open('POST', 'Trying2.inc.php', true);
xmlhttp.setRequestHeader ('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send(Parameters);
}
</script>
調用 「Trying2.inc.php」。
現在,當我在「trying.inc.php」頁面時,Ajax在調用「trying2.inc.php」時工作,但是從主頁面我可以調用「trying.inc.php」,但是「嘗試。 inc.php「不能調用」trying2.inc.php「,我希望它很清楚,因爲我不知道如何解釋它。如果可以做些什麼來實現它,請使用代碼支持它。我爲了學習目的這麼做,請不要對我苛刻,在此先感謝。
最好使用嵌套的ajax腳本。 –
您是否看過開發人員工具上的網絡選項卡?是否顯示錯誤?如果你看到這樣的錯誤'Origin http:// localhost:8080不被Access-Control-Allow-Origin'所允許,那麼你可能想嘗試添加'header('Access-Control-Allow-Origin:* ');'在Trying2.inc.php文件HTH的開頭。 – JohnnyQ
您不能通過將腳本放入'.innerHTML'來執行腳本。動態加載腳本的唯一方法是明確創建'script'節點。 – Barmar