+ -
当前位置:首页 → 问答吧 → ajax问题,jq框架,请帮忙解决,谢谢了。

ajax问题,jq框架,请帮忙解决,谢谢了。

时间:2009-05-15

来源:互联网

最近在为网站改造体验核心,在学ajax,看好jq。然后我用了碰到问题。废话我不说了。
我先说我要的效果是怎么样的。

我要的效果是,先检测表单用户名和密码,检测如果通过,就用jq的.ajax来传送数据。
然后返回的格式是alert的窗口,不是innerHTML的。如果登陆成功,点击确定按纽,页面不转向,但是产生事件,也就是点击后触发ID为loginstate的div里,用jq的load异步无缝刷新显示当前登陆状态。我要的效果就是这样的。

我自己写了一个,然后值传不到数据接收层里,由ajax.asp返回的值都是我定义好的,用户名和密码不能为空,因为我加了If username="" or password="" Then ……。
也就是说值传不进去。

如果有好心人士能帮帮我忙,指点一下或者帮我把这代码改完,我先说声谢谢,因为我现在缺的就是实例。最好能改成我上面说的效果。我这里把我ajax.asp代码和js代码贴出来,请帮忙分析或修改,谢谢了。另外说明我是用ajax.asp?action=login来处理登陆的。

---------------------------------------

common.js代码

---------------------------------------

复制代码
  1. //登陆验证
  2. function chklogin() {
  3. var username = $.trim($("#lusername").val());
  4. var password = $.trim($("#lpassword").val());
  5. if ( username == '' ) {
  6.   alert('请输入用户名。');
  7.   $("#lusername").focus();
  8.   return false;
  9. }
  10. if ( password == '' ) {
  11.   alert('请输入密码。');
  12.   $("#lpassword").focus();
  13.   return false;
  14. }
  15. $.ajax({
  16. url: "ajax.asp?action=login",
  17. type: "post",
  18. data: "username=+lusername,password=+lpasspord",
  19. success: function(msg){
  20. alert( "" + msg );
  21. window.location.href = "index.asp";
  22. }
  23. });
  24. var btn_text = $("#loginsubmit").val();
  25. $("#loginsubmit").val('正在提交...');
  26. $("#loginsubmit").attr('disabled','disabled');
  27. return true;
  28. }


---------------------------------------

ajax.asp代码

---------------------------------------

复制代码
  1. Sub login()
  2. username=replace(Trim(request.Form("lusername")),"'","")
  3. password=md5(replace(Trim(request.Form("lpassword")),"'",""))
  4. If username="" Or password="" Then
  5.   FoundErr=True
  6.   echo ("用户名或密码必须填写!")
  7.   If FoundErr Then exit Sub
  8. Else
  9.   Set rs = mysql.exec("select * from hp_users where username='"&username&"' and [password]='"&password&"'", 1)
  10.   If not(rs.bof and rs.eof) Then
  11.    If rs("states")=0 Then
  12.     echo ("用户名名已被锁定,有什么疑问请联系管理员!")
  13.     Exit Sub
  14.    Else
  15.     If password=rs("password") Then
  16.      Response.Cookies(""&cookiename&"")("username")=rs("username")
  17.      Response.Cookies(""&cookiename&"")("group")=rs("groups")
  18.      echo ("登陆成功!")
  19.     End If
  20.    End If
  21.   Else
  22.    echo ("用户名或密码错误!")
  23.   End If
  24. End If
  25. End Sub
[ 此帖被hipao在2009-05-15 20:38重新编辑 ]

作者: hipao   发布时间: 2009-05-15

data: "username=+lusername,password=+lpasspord",
这里写错了,你传的是字符串常量

data: {username: username, password: password},

作者: keakon   发布时间: 2009-05-15

谢谢,那里是写错了,然后我改了一下还是无法取得值。

作者: hipao   发布时间: 2009-05-15

我没用过asp,你在服务器端输出一些调试信息,看看是服务器没拿到数据,还是客户端取不到

作者: keakon   发布时间: 2009-05-15

#  url: "ajax.asp?action=login",
# type: "post",
# data: "username=+lusername,password=+lpasspord",

在 java中:

应该在url后面添加username与password参数...在后台好像只能是使用request.getparameter("username")来获取值,

asp就不知道是不是一样了,java的form好像是不能获取文本域中的值.只能使用url重写

作者: wanyouy2539   发布时间: 2009-05-16

相关阅读 更多