javascript - ajax 页面全部重新加载后。

标签 javascript html ajax

我只是在探索 ajax 来学习它。

我尝试了以下 JavaScript 测试代码。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Ajax Demo</title>
<meta name="" content="">
<script type="text/javascript">

function aa(){

var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }

xmlhttp.open("GET","getprod.php",false);
xmlhttp.send();

document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
</script>
</head>
<body>

<form>
    <input type="text" name ="txta"  onchange="aa();">  </input>
    <br>
    <div id ='myDiv' style="width: 400px;height: 300px; overflow-y: auto;border: #e87517 1px solid"> 

  <?php
      $mysqli=new mysqli('localhost', 'root', 'password', 'ajax');
      if ($mysqli->connect_errno) {
      die("Connect failed". $mysqli->connect_error);
      }
      $mysqli->set_charset("utf8");

  if ($result = $mysqli->query("select id, name from test;")){
      while ($row = $result->fetch_assoc()) {
      echo $row['id'], " - " , $row['name'], "<br>";
      }//while 
  }//if 

   $result->close(); 
   $mysqli->close();
   ?>   
 </div> 
 </form>
</body>
</html>

还有几行“getprod.php”。

  <?php
   echo "123";
   ?>

当我更改文本框中的值时,Ajax 根据需要返回字符串“123”并将其放入 div 中,但几秒钟后,div 再次填充来自 MySQL 的结果,这是不希望的。

1)我的代码有什么问题? (目标是:当我更改文本框中的值时,只有从ajax返回的字符串 - “123”必须永久出现在div容器中。) 2)当文本框失去焦点或按键盘上的 ENTER 时,会发生文本框更改事件。如何在没有此操作的情况下触发更改事件?

提前致谢。

最佳答案

  1. 您发布的代码中没有任何内容会导致页面重新加载。

  2. “没有此操作” - 但什么时候?考虑使用 oninput 事件 - http://www.w3schools.com/jsref/event_oninput.asp .

关于javascript - ajax 页面全部重新加载后。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26426881/

相关文章:

javascript - jQuery.parseJSON 意外的标记/

javascript - 如何使用其他控件的值刷新 CGridView 控件

javascript - 如何在 Vuejs 中将 Prop 从 parent 传递给 child

html菜单栏无法添加子菜单

css - 填充底部不起作用。我在 chrome 浏览器中测试

jquery - 将 Json 数据传递到 MVC Razor View

javascript - Meteor:在所有浏览器上更新

javascript - 'document.getElementById(...)' 为 null 或不是 IE8 中的对象

php - AJAX/MySQL、JavaScript - 数据库和倒计时

javascript - Ajax 成功函数中返回字符串