0

phpサーバーに入力を送信していますが、サーバーはクライアント側に出力を返します。入力がサーバーに送信されていないようで、ハイライト機能を実装するロジックに問題があります。

入力を入力してサーバーに送信するクライアント側

  <html>
  <head>
  <script type="text/javascript">
  function showUser(str)
  {
  if (str=="")
  {
     document.getElementById("txtHint").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("txtHint").innerHTML=xmlhttp.responseText;
  }
}
   xmlhttp.open("GET","test_server.php?q="+str,true);
   xmlhttp.send();
}
</script>
</head>
<body>

<form>
    Input: <input type="text" name="user" />
   <input type="submit" value="Submit" />
 </form>
<br />
<div id="txtHint"><b>The result will be listed here.</b></div>

</body>
</html>

サーバーは入力を受け取り、文に名前または番号があるかどうかを確認します。それらの条件を強調表示し、クライアントに戻ります。

 <?php
 $q=$_GET["q"];
 $name=array("jake","jill");
 $number=array("one","two","three","four","five");
 $sentence= split(" ", $q);
 echo "<table border='1'>
 <tr>
 <th>insert</th>
 <th>tagged</th>

 </tr>";
 echo "<tr>";
 echo "<td>" . $q . "</td>";
 echo "<td>" "</td>";
 echo "</tr>";

 echo "</table>";

 ?>
4

1 に答える 1

1

これを試してください、ここでうまくいきました:

 <html>
  <head>
  <script type="text/javascript">
window.onload = function(){
  function showUser(str)
  {
  if (str=="")
  {
     document.getElementById("txtHint").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("txtHint").innerHTML=xmlhttp.responseText;
  }
}
   xmlhttp.open("GET","test_server.php?q="+str,true);
   xmlhttp.send();
   return false;
}
document.getElementById('form').onsubmit = function(){
    showUser(document.getElementById('user').value);
    return false;
}
}
</script>
</head>
<body>

<form id="form">
    Input: <input type="text" id="user" name="user" />
   <input type="submit" value="Submit" />
 </form>
<br />
<div id="txtHint"><b>The result will be listed here.</b></div>

</body>
</html>
于 2012-05-08T00:04:06.617 に答える