发布网友 发布时间:2022-04-27 14:46
共5个回答
懂视网 时间:2022-04-27 19:07
asp.net中在用ajax格式传递数据到aspx页面时有时会出现乱码,以下为解决方法
XmlHttp.open("POST", "test.aspx", false);
XmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
XmlHttp.send("QueryName=" + escape(Queryname) + "&QuerySex=" +escape(Querysex));
在test.aspx中:
代码如下:
string QueryName = HttpUtility.UrlDecode(Request.Params["QueryName"]);
string QuerySex = HttpUtility.UrlDecode(Request.Params["QuerySex"]);
热心网友 时间:2022-04-27 16:15
使用HttpUtility.UrlEncode方法进行编码
这样写:
<a class="billList" style="color: Blue;" href='StatisticsInfo.aspx?ProctName=<%# HttpUtility.UrlEncode(Eval("ProctName").ToString)%>'>查看回收详情</a>热心网友 时间:2022-04-27 17:33
最好的办法就是传值的时候将其加密,在接收页面,将其解密就OK了
祝你成功!热心网友 时间:2022-04-27 19:08
传值的时候尽量传递Id,省去转码的麻烦~!追问但是有的情况下要传中文啊..怎么解决啊追答后台代码
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
List lstP = new List();
lstP.Add(new Proct() { Id = 1, ProctName = "茶品" });
lstP.Add(new Proct() { Id = 2, ProctName = "*" });
lstP.Add(new Proct() { Id = 3, ProctName = "苹果" });
this.dg.DataSource = lstP;
this.dg.DataBind();
}
if (Request["ProctName"] != null)
{
Response.Write(Request["ProctName"].ToString());
}
}
}
public class Proct
{
public string ProctName { get; set; }
public long Id { get; set; }
}
页面部分
'>查看回收详情
直接传也没有问题
热心网友 时间:2022-04-27 20:59
HttpUtility.UrlEncode(strValue, Encoding.GetEncoding("UTF-8"));
后面加多个参数看看