0

因此,我使用 javascript 从 php 文件中提取查询,然后将其发布到另一个 javascript,然后将另一个 php 查询放在另一个文本区域中。

换句话说:

[input text area 1] -> [javascript live search] -> [Query results]
[Query results] -> [onClick event] -> [Load results in text area 2]

这个想法是,一个文本区域中的实时搜索将在另一个实时中得到近似匹配。

但是,当我尝试在第二个文本区域中加载数据时,它会以原始数据的形式出现。我对如何正确查看它感到困惑。

HTML:

第一个文本区域是带有调用脚本的函数的输入,这里是:

 function showResult(str) {
     if (str.length == 0) {
         document.getElementById("livesearch").innerHTML = "";
         document.getElementById("livesearch").style.border = "0px";
         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("livesearch").innerHTML = xmlhttp.responseText;
             document.getElementById("livesearch").style.border = "1px solid #000";
         }
     }
     xmlhttp.open("GET", "ajax-search.php?keyword=" + str, true);
     xmlhttp.send();
 }

php返回结果:

echo '<li onclick="grabID('.$row['dir_id'].')" >'.$row['eng_dir'].'</li><br />';

然后启动一个点击事件:

function grabID(num){
xmlhttp.open("GET","ajax-result.php?result="+num,true);
xmlhttp.send();
document.getElementById("output").innerHTML="Something here?!?!?!";
}

再次正确返回来自其他 php 的结果。问题是因为它是一个循环,所以它返回了很多结果而不仅仅是 1。我只想要 1 与之前搜索的 ID 匹配的结果。

4

0 回答 0