Ajax中后续调用的问题

大家好!
在这里我有一个问题,
我有一个用于在数据库中搜索用户名的搜索表单
它在以下情况下运行良好
我第一时间搜索用户名
.
当我有了
变化
这个
用户名
在文本框中并提交,则它不会发出请求并从服务器获取详细信息.
在第一次请求后,如果我检查了警报,
Http_quest.readyStatus=1
为此,我拔出我的头发,用谷歌搜索,还有很多我正在做的事情
有人能帮个忙吗?
这里,我提供了AJAX的代码

选择 | 换行 | 行号
  1.  
  2.  function makePOSTRequest(url, divTag, params) {
  3.       var http_request = false;
  4.  
  5.       if (window.XMLHttpRequest) { // Mozilla, Safari,...
  6.          http_request = new XMLHttpRequest();
  7.          if (http_request.overrideMimeType) {
  8.              // set type accordingly to anticipated content type
  9.             //http_request.overrideMimeType('text/xml');
  10.             http_request.overrideMimeType('text/html');
  11.          }
  12.       } else if (window.ActiveXObject) { // IE
  13.          try {
  14.             http_request = new ActiveXObject("Msxml2.XMLHTTP");
  15.          } catch (e) {
  16.             try {
  17.                http_request = new ActiveXObject("Microsoft.XMLHTTP");
  18.             } catch (e) {}
  19.          }
  20.       }
  21.        if (!http_request) {
  22.          alert('Cannot create XMLHTTP instance');
  23.          return null;
  24.  
  25.       }
  26.       http_request.open('POST', url, true);
  27.       http_request.onreadystatechange = function(){ var x = alertContents(divTag,http_request)};
  28.  
  29.       http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  30.       http_request.setRequestHeader("Content-length", params.length);
  31.       http_request.setRequestHeader("Connection", "close");
  32.       http_request.setRequestHeader("Cache-Control","no-cache");
  33.       http_request.send(params);
  34.    }
  35.  
  36.    function alertContents(divTag,http_request) {
  37.       alert(http_request.readyState);
  38.       if (http_request.readyState == 4) {
  39.           alert(http_request.status);
  40.          if (http_request.status == 200) {
  41.             //alert(http_request.responseText);
  42.             result = http_request.responseText;
  43.             document.getElementById(divTag).innerHTML = result; 
  44.             http_request = false;
  45.          } else {
  46.             alert('There was a problem with the request.');
  47.             http_request = false;
  48.          }
  49.       }
  50.    }
  51.  
  52.  
  53.    function retrieveSearchResults(url,divTag,params){
  54.       alert(url+"\n"+divTag+"\n"+params);
  55.       makePOSTRequest(url,divTag,params);
  56.    }
  57.  
  58.  
  59.  

下面是我调用AJAX的代码

选择 | 换行 | 行号
  1. <form action="javascript :retrieveSearchResults('searchResults.jsp','myspan','UserName='+escape(document.getElementById('UserName').value));" name="myform" id="myform" >
  2.  <table cellspacing="2" cellpadding="1" border="0" width="40%" align="center">
  3. <tr>
  4.     <td>User Name</td>
  5.     <td><input type="text" name="UserName" size="15"></td>
  6.     <td></td>
  7. </tr>
  8.  
  9. <tr>
  10.     <td>User Course</td>
  11.     <td><input type="text" name="UserCourse" size="15"></td>
  12.     <td></td>
  13.     <td><input type="Reset" value="clear" style="width:50px;"></td>
  14.     <td><input type="submit" name="go" value="go" style="width:50px;"></td>
  15. </tr>
  16.  
  17.  
  18. </table>
  19. </form>
  20.  

在本例中,我将搜索用户名
提前谢谢你
哈里

# 回答1


也许结果正在被缓存.你在所有浏览器上都测试过了吗?

标签: Javascript

添加新评论