我希望有人能幫助一點與這個..AJAX調用PHP多輸入
我的HTML/PHP是不是太寒酸,但我的JS是相當多的複製/粘貼所以忍耐一下...
很簡單 - 我有兩個表單域,我想要傳遞給一個PHP腳本異步。
HTML
<form>
<input type="text" size="30" onKeyUp="showResult(this.value)" autocomplete="off" placeholder="Name">
<input type="text" size="30" onKeyUp="showResult(this.value)" autocomplete="off" placeholder="Company">
<div id="livesearch" class="livesearch"></div>
</form>
AJAX JS
var delayTimer;// delay to prevent searches on every key up
\t function showResult(str) {
\t
\t \t clearTimeout(delayTimer);
\t \t delayTimer = setTimeout(function() {
\t
\t \t \t //AJAX stuff
\t \t \t if (str.length==0) {
\t \t \t \t document.getElementById("livesearch").innerHTML="";
\t \t \t \t //document.getElementById("livesearch").style.border="0px";
\t \t \t \t return;
\t \t \t }
\t \t \t if (window.XMLHttpRequest) {
\t \t \t \t // code for IE7+, Firefox, Chrome, Opera, Safari
\t \t \t \t xmlhttp=new XMLHttpRequest();
\t \t \t } else { // code for IE6, IE5
\t \t \t \t xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
\t \t \t }
\t \t \t xmlhttp.onreadystatechange=function() {
\t \t \t \t if (this.readyState==4 && this.status==200) {
\t \t \t \t \t document.getElementById("livesearch").innerHTML=this.responseText;
\t \t \t \t \t //document.getElementById("livesearch").style.border="1px solid #A5ACB2";
\t \t \t \t }
\t \t \t }
\t \t \t xmlhttp.open("GET","livesearch.php?q="+str,true);
\t \t \t xmlhttp.send();
\t
\t \t }, 300);//1000 is 1 second
\t }//end function showResult
的PHP變得有點複雜,因爲它是利用模糊邏輯BU基本上它使用$ _GET [「q」]字符串並回顯對#livesearch的響應。
我無法在JavaScript中看到的是如何將兩個字符串(或帶分隔符的連接字符串)傳遞給我的PHP,以便我可以獨立處理它們。
這是否有意義?請在此階段忘記可怕的缺乏衛生:)
任何幫助將不勝感激。
理查德
添加ID給每個輸入,然後使用'的document.getElementById( '身份證')。value'得到的值。例如'strName = document.getElementById('name').value; strCompany = document.getElementById('company')。value;'then'livesearch.php?name =「+ strName +」&company =「+ strCompany' –