0
所以基本上我有這個HTML。如何使用AJAX打印PHP POST數據? (沒有jQuery)
<form method="post" id="myform" onsubmit="getData()">
<fieldset>
<legend>Form</legend>
<label>Color: <input type='text' id="color" name='color'></label>
<label><input type="submit"></label>
</fieldset>
</form>
<div id="showoutput">
</div>
這個PHP:
<?php
$color = $_POST['color'];
if($color != "")
{
$color = htmlentities($color, ENT_QUOTES);
print "<p>The color is $color</p>";
}
else
{
print "<p>Fill out form!</p>";
}
?>
而且這個JS:
window.onload = getData;
var req = new XMLHttpRequest();
function getData()
{
var poststr = "color=" + encodeURI(document.getElementById("color").value);
req.open("POST", "lab11-1.php", true);
req.onreadystatechange = useResponse;
req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
req.send(poststr);
}
function useResponse()
{
if(req.readyState == 4)
{
if(req.status == 200)
{
document.getElementById('showoutput').innerHTML = req.responseText;
}
}
}
我想能夠輸入形式一種顏色,點擊提交,並使用AJAX將PHP打印到我的HTML中的「showoutput」div。我已經嘗試了所有我能想到的並且一直無法解決的問題。
你想完成什麼,你錯過了兩種不同的提交表單的方式。你想通過AJAX來做到嗎?這個對我有用。你確定你在同一個文件夾中有lab11-1.php文件嗎? – Gacci
提交 – Ghost
時不要忘記添加'preventDefault()'我覺得自己像個白癡。我引用了我的php文件相對於js文件,而不是html文件。謝謝! –