问题描述
login.aspx页面代码<divclass="mainbox"><h3class="titlebig">用户登录</h3><pclass="font14">用户名</p><inputtype="text"name="username"id="username"tabindex="1"/><pclass="font14">密码</p><inputtype="password"name="password"id="password"tabindex="2"/><brstyle="clear:both"/><p></p><ahref="#"style="font-size:14px;">忘记了您的密码?</a><br/><inputtype="hidden"name="comeurl"value="index.asp"/><inputclass="input0"name="submit"onclick="log_submit()"type="button"tabindex="13"value="立即登录"/></div>js代码functionlog_submit(){varusername=$("#username").val();varpassword=$("#password").val();if(username==""){layer.msg('用户名不能为空');returnfalse;}if(password.trim()==""){layer.msg('密码不能为空');returnfalse;}$.ajax({type:"POST",datatype:"json",url:"../ajax/userLogin.ashx?username="+escape(username)+"&pwd="+escape(password),success:function(result){varreturnData=JSON.parse(result);if(returnData.success="true"){alert("登录成功");window.location.href="shouxin.aspx";}else{alert("登录失败");returnfalse;}}})}ajax代码usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Web;namespaceMaticsoft.Web.ajax{///<summary>///userLogin的摘要说明///</summary>publicclassuserLogin:IHttpHandler{StringBuilderjson=newStringBuilder();publicvoidProcessRequest(HttpContextcontext){stringusername=context.Request["username"];stringpwd=context.Request["pwd"];userlogin(username,pwd);context.Response.ContentType="text/plain";context.Response.Write(json);}privatevoiduserlogin(stringusername,stringpwd){BLL.f_userbll_a=newBLL.f_user();if(bll_a.GetModelList("UserName='"+username+"'andUserPassword='"+pwd+"'").Count>0){HttpContext.Current.Session["LoginUser"]=username;json.Append("{"success":"true"}");}else{json.Append("{"success":"false"}");}}publicboolIsReusable{get{returnfalse;}}}}
解决方案
解决方案二:
不光要贴代码,还得加点描述啊。ashx里面用session的话,需要实现System.Web.SessionState.IRequiresSessionState接口
解决方案三:
看起来很辛苦,,,,
解决方案四:
引用1楼EdsionWang的回复:
不光要贴代码,还得加点描述啊。ashx里面用session的话,需要实现System.Web.SessionState.IRequiresSessionState接口
的确是这个问题,我已解决,谢谢
解决方案五:
$.ajax()方法你使用错了,post与get的传值方式是不一样的,具体哪里不一样,你可以去百度。$(document).ready(function(){$('#btnLogin').click(function(){varuserName=$('#username').val();varpwd=$('#password').val();$.ajax({type:"POST",data:{'username':userName,'pwd':pwd},//<<<主要改这就里datatype:"json",url:"Handler1.ashx",success:function(result){varreturnData=JSON.parse(result);if(returnData.success="true"){alert("登录成功");window.location.href="WebForm1.aspx";}else{alert("登录失败");returnfalse;}}})});})
解决方案六:
//获取Get方式提交的数据key代表参数名Request.QueryString["key"];//获取Post方式提交的数据Request.Form["key"];
解决方案七:
贴出http调试器捕获的Request信息。能不能专业一点点呢?学学程序员的开发技术——调试。