表单里用户名和密码两个属性,单击按钮触发AJAX函数,这个AJAX函数提取表单中“用户名”和“密码”的值发送到后台程序验证,php写的后台程序,php程序分别对“用户名”和“密码”进行验证,用户名出错给出提示,传回给ajax,显示到<div id="user"></div>中,同理密码出错,显示到<div id="pass"></div>中,现在用户名和密码能够正确传到PHP程序中,做出正确验证,但是xmlHttp.responseText,如何能实现上面的效果呀?急!!!

解决方案 »

  1.   

    // JavaScript Document
    var xmlHttp;
    function S_xmlhttprequest(){
    if(window.ActivXObject){

    xmlHttp=new ActiveXObject('Mcrosoft.XMLHTTP');
    }else if(window.XMLHttpRequest){
    xmlHttp=new XMLHttpRequest;
    }
    }
    function php100(){
    S_xmlhttprequest();
    user=document.myform.user.value;
    pwd=document.myform.pwd.value;
       var postStr = 'user='+ user+'&pwd='+pwd; xmlHttp.open('POST','login3.php',true);
     //定义传输的文件HTTP头信息 
    xmlHttp.onreadystatechange=byphp;
    xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
     //发送POST数据
     xmlHttp.send(postStr); }
    function byphp(){
    var byphp100=xmlHttp.responseText;
    document.getElementById('userInfo').innerHTML=byphp100;
    }// JavaScript Document// JavaScript Documentform name="myform" method="post" action="">
     用户名:<input type="text"  name="user" value=""  size=10;/>   <br>
     密 码:<input type="password" name="pwd" value="" size=10;/>   <br>
     <input type="button"  name="button" value="登陆"  onclick="php100();"/>
     </form>
    <div id="userInfo"></div>
    <div id="passInfo"></div><?php
     $username=$_POST['user']; //获取用户编号
     $password=$_POST['pwd']; //获取密码编号
     if($username=='09430102'){
      echo "用户名正确";
     }else{
         echo "用户名不正确";
     }
     if($password=='my0917'){
     echo "密码正确";
     }else{
         echo "密码错误";
     }
    ?>
      

  2.   

    “用户名”验证返回的信息显示到userinfo那个div中,密码显示到passinfo那个div中;代码应该怎么改?希望详细些,新手谢谢了!
      

  3.   

    var byphp100=xmlHttp.responseText; 
     document.getElementById('userInfo').innerHTML=byphp100;这不是回传处理了吗?
      

  4.   

    function byphp(){
      var byphp100=xmlHttp.responseText;
      if(/用户/.test(byphp100))
        document.getElementById('userInfo').innerHTML=byphp100;
      else
        document.getElementById('passInfo').innerHTML=byphp100;
    }
      

  5.   

     index.html<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    </head>
    <script src="ajax.js"></script>
    <body>
    <label>
    用户名:<input type="text" id="username" name="textfield" />
    </label>
    <p>
     密码 <input type="text" id="pw" name="textfield2"  onblur="check()"/>
    </p>
    </body>
    </html>
    <div id="user"></div>
    ajax.js
    var http_request;
    function send_request(url,method) {
      http_request = false;
      if(window.XMLHttpRequest) { 
      http_request = new XMLHttpRequest();
      if (http_request.overrideMimeType) {
       http_request.overrideMimeType('text/xml');
      }
      }
      else if (window.ActiveXObject) { 
      try {
       http_request = new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
       try {
       http_request = new ActiveXObject("Microsoft.XMLHTTP");
       } catch (e) {}
      }
      }
      if (!http_request) {
      window.alert("不能创建XMLHttpRequest对象实例.");
      return false;
      }
      switch(method){
      case 1:http_request.onreadystatechange = chk;break;
        }
      http_request.open("GET", url, true);
      http_request.send(null);
    }function check(){
    send_request("check.php?action="+document.getElementById('pw').value,1);
    function chk() {
    if (http_request.readyState == 4) { 
     if (http_request.status == 200) {
     document.getElementById("user").innerHTML="";
    document.getElementById("user").value=http_request.responseText;
        } else {
         alert("您所请求的页面异常。");
        }
       }else {
     document.getElementById("user").innerHTML="正在读取数据中……";
     }
    }
    check.php<?phpif(存在){
    echo"正确";
    }else{
    echo "不正确";
    }
    ?>
      

  6.   

    check.php中判断下$_POST['username']和$_POST['pw']
      

  7.   

    代码运行,咋还是不能将“用户名”和“密码”验证返回信息显示到不同的div中?回传控制信息怎么写?谢谢!--新手!
      

  8.   

    留名!   用jquery不是更好吗