非常感谢!但是我这样写连数据库怎么会没有反应??
--------------test.asp-------------------------
<%
if request.querystring("R")="" then
response.write "<script language=javascript>alert('不能为空');history.back();</script>"      '如果为空则提示
else
set rs=server.createobject("adodb.recordset")
sql="select * from [table] where NO1='"&request.querystring("R")&"'"
rs.open sql,conn,1,1
if not(rs.bof and rs.eof) then
response.write rs("NO2")   '读取NO2出来
else
response.write "<script language=javascript>alert('错误');history.back();</script>"   '如果没有数据则提示错误
end if
end if
%>
-------------test.asp--------------------------

解决方案 »

  1.   

    晕,你要用这个ajax至少应该先理解ajax的原理~~
      

  2.   

    不是接收write出来的东西吗?
      

  3.   

    set rs=server.createobject("adodb.recordset")
    sql="select * from [table] where NO1='"&request.querystring("R")&"'"
    rs.open sql,conn,1,1
    if not(rs.bof and rs.eof) then
    response.write rs("NO2")   '读取NO2出来
    else
    response.write request.querystring("R")   '如果没有数据则打印输入的数据
    end if
    我就是这样也不行啊
      

  4.   

    -----------test.htm-------------
      <input name="Text1" type="text" id="Text1" onBlur="javascript:DoBlur();">
      <input name="Text2" type="text" id="Text2">
    <script language="javascript" src="ajax.js"></script>
    <script language="javascript" type="text/javascript">
    function pageCallback(response)

    document.getElementById("Text2").value = response;
    }
    function DoBlur()
    {
    var ajax = new AJAX();
    ajax.callPage("test.asp?R=" + document.getElementById("Text1").value, pageCallback);//这里你要写你查询数据库的页面
    }
    </script>
    -----------test.htm-------------在查询数据库的页面你response.write结果就可以了~~
      

  5.   

    这个我知道啊,我已经是这样了,这是我的test.asp
    -----------------------test.asp-------------------
    set rs=server.createobject("adodb.recordset")
    sql="select * from [table] where NO1='"&request.querystring("R")&"'"
    rs.open sql,conn,1,1
    if not(rs.bof and rs.eof) then
    response.write rs("NO2")   '读取NO2出来
    else
    response.write request.querystring("R")   '如果没有数据则打印输入的数据
    end if
    ---------------------test.asp--------------------------------
    但是没有反应.
      

  6.   

    不知道windok2004把 ajax.callPage("test.php?R=" + document.getElementById("Text1").value, pageCallback);这句修改过了没。。你是test.asp,而mikespook的是test.php
      

  7.   

    你直接访问asp文件有没有输出?如果直接访问没问题,那检查有没有提示javascript脚本错误~~
      

  8.   

    set rs=server.createobject("adodb.recordset")
    sql="select * from [table] where NO1='"&request.querystring("R")&"'"
    rs.open sql,conn,1,1
    if not(rs.bof and rs.eof) then
    response.write rs("NO2")   '读取NO2出来
    else
    response.write "<script language=javascript>alert('错误');document.form1.text1.focus();</script>"   '这里有问题,无法获得焦点,怎么样才可以获得呢??
    end if
      

  9.   

    ................
    晕,你要完成这样的功能?
    你依然没有理解ajax模型~~你用 response.write "<script language=javascript>alert('错误');document.form1.text1.focus();</script>" 输出的内容将在function pageCallback(response)中回调,而response就是你write出来的内容~
      

  10.   

    如果我write的两个数据分别处于两个input框里面怎么办呢??
      

  11.   

    function pageCallback(response)

    document.getElementById("Text1").value = doSomeSplit1(response);
    document.getElementById("Text2").value = doSomeSplit2(response);
    }那你要在客户端脚本对response值进行拆分~~response的内容只会是你callPage时,那个页面输出的内容,至于你获得的值如何进行显示,则是客户端脚本需要做的~~用ajax时一定要区别清楚什么任务是服务器端要做的,什么任务是客户端要做的~
      

  12.   

    非常感谢,但是两个的话就无法显示
    我在test.asp里面:
    (前面的没有错了)
    response.write rs("NO1")
    response.write rs("NO2")但是显示script errorfunction pageCallback(response)

    document.getElementById("Text1").value = doSomeSplit1(response);  '这里有错误,缺少对象
    document.getElementById("Text2").value = doSomeSplit2(response);
    }
    是不是还少了什么??dosomesplit是什么??我上google也没有查到.
      

  13.   

    晕,doSomeSplit是你要自己写的函数~我只是举这么个例子而已~~
      

  14.   

    明白了,我现在懂了,非常感谢.
    先把reponse的字符串转成数组再使用.谢谢!!