html里
- JScript code
$.ajax({ type: 'post', cache: false, dataType: 'json', url: 'WebHandler/User.ashx', data: [ { name: 'Action', value: 'name' } ], success: function (result) { if (result !== "") { alert(result);//result的结果永远是[object] } }, error: function () { }, beforeSend: function () { }, complete: function () { } });
在ashx里
- C# code
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; string terms = context.Request.Params["Action"]; switch (terms)//得到传的值为 name { case "id": context.Response.Write(yjCookie.GetUce.Id); break; case "name": context.Response.Write(yjCookie.GetUce.Name);//调试发现传的值为“测试用户” break; default: context.Response.Write(""); break; } context.Response.End(); }
为什么Ajax得到的传值永远是[object]?
------解决方案--------------------------------------------------------
你使用Json格式交互,但是你服务端输出是文本。所以转换失败,显示Object。
一、服务端序列化文本为JSon输出
二、使用文件格式交互
------解决方案--------------------------------------------------------
dataType:"text"
参考:http://www.w3school.com.cn/jquery/ajax_ajax.asp
------解决方案--------------------------------------------------------
一句话你就明白了。object是个对象