日期:2014-05-16  浏览次数:20845 次

服务器端Request不到Ajax客户端的提交的URL参数值 - Web 开发 / Ajax
客户端提交调用AjaxUpdater.Update("GET","userValidator.asp",display);
后,服务器端Request不到userName和Password值
如果
JScript code

AjaxUpdater.Update("GET","userValidator.asp?userName=mikel&password=mikel",display);


则服务器端可以获得userName和password

请问各位怎么会造成这种情况?
谢谢!!


客户端代码:
JavaScript代码:
JScript code

function initialize()
{

    //alert("userValidator.asp");
    AjaxUpdater.Update("GET","userValidator.asp",display);
}
function display()
{
    try{
        if(Ajax.checkReadyState('loading')=='OK')
        {
            alert("here");

            info=Utilities.getElement("info");
            //alert(Ajax.getResponse());
            info.innerHTML=Ajax.getResponse();

            
        }
        
    }catch(e)
    {
        //alert(e);
        document.write(e);
    }
}

</script>


HTML代码:
HTML code

<body>
<div id="loading"></div>
<div id="info">
<form method="post">
<div>用户登陆</div>
<div>用户名:<input type="text" id="userName" name="userName"/></div>
<div>密码:<input type="text" id="password" name="password"/></div>
<div><input type="button" value="submit" onclick="initialize();" /></div>
</form>
</div>
</body>
</html>



服务器端代码:

VBScript code

<%
    'Response.Write("<div>测试</div>")
    'if Request("Action")="login" then
        userName=Request.QueryString("userName")
        password=Request.QueryString("passWord")
        
        if Request.QueryString("userName")="" or Request.QueryString("password")="" then
            Response.Write("<div>Is Empty</div>")
        else
            

            Set rs=Server.CreateObject("ADODB.RecordSet")
            sql="select * from userInfo where userName='"&userName&"' and password='"&password&"'"
            'response.write sql
            rs.open sql,conn,2,2
            
            if not rs.EOF then
                'Response.Cookies("userInfo")
                Response.Write("<div id='panel'><div>我的收藏</div><div>修改资料</div><div>我的好友</div></div>")
else
    Response.Write("<div>登陆失败</div>")
            end if            
        end if
    'end if
%>







------解决方案--------------------
又一个没搞清楚ajax的get和post的...

和表单的get和post差不多啊,使用get时需要把参数加到url后面.....
post是需要用send方法发送到服务器
------解决方案--------------------
晕....


都说你指定了get方法时,要把参数加到url后面....这样在服务器端使用request.querystring来获取

你使用send方法是要指定为post时才有用......这时要使用request.form来获取