很奇怪的问题,TextBox中文值取不到,英文值能取到

Reecle 2010-10-19 08:44:48
用了一个用户控件 search.ascx 上面有两个dropdownlist 和一个textbox 还有一个 imagebuttom
把这个search.ascx 放在 首页index 上面 ,我 在imagebutton 的 click 事件中 取值 ,如果textbox是英文字母就可以, 中文就取不到 ,dropdownlist也是的 . 请各位大牛 帮下忙? 小弟不剩感激~
...全文
212 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
孟子E章 2010-10-19
  • 打赏
  • 举报
回复
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

protected void Page_Load(object sender, EventArgs e)
{
ImageButton1.OnClientClick = "document.getElementById('" + TextBox2.ClientID + "').value=escape(document.getElementById('" + TextBox2.ClientID + "').value)";
}


protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
Response.Write(Server.UrlDecode(TextBox2.Text));
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<script></script>
</head>
<body>
<form id="form1" runat="server">
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:ImageButton ID="ImageButton1" runat="server" OnClick="ImageButton1_Click" />
</form>
</body>
</html>


或者
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

protected void Page_Load(object sender, EventArgs e)
{
ImageButton1.OnClientClick = "document.getElementById('" + TextBox2.ClientID + "').value=encodeURIComponent(document.getElementById('" + TextBox2.ClientID + "').value)";
}

protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
TextBox2.Text = Server.UrlDecode(TextBox2.Text);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<script></script>
</head>
<body>
<form id="form1" runat="server">
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:ImageButton ID="ImageButton1" runat="server" OnClick="ImageButton1_Click" />
</form>
</body>
</html>
孟子E章 2010-10-19
  • 打赏
  • 举报
回复
Image1.Attributes.Add("onclick","document.getElementById('"+TextBox2.ClientID+"').value=escape(document.getElementById('"+TextBox2.ClientID+"').value)")
chen_ya_ping 2010-10-19
  • 打赏
  • 举报
回复
做web开发的还是用utf-8比较好。
michael008 2010-10-19
  • 打赏
  • 举报
回复
你把文件另存一下 存的时候编码保存, 选utF-8带签名. 同时查下 HTML里HEad里CharSet里也确定是UTF-8 然后 CS文件也另存一下成UTF-8
就可以了
边城的刀声 2010-10-19
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 reecle 的回复:]

是我 首页的 编码格式有问题 导致用户控件只能取英文 ,不好意思!!!!
[/Quote]
哦?你是怎么设置的编码格式呢?
Reecle 2010-10-19
  • 打赏
  • 举报
回复
是我 首页的 编码格式有问题 导致用户控件只能取英文 ,不好意思!!!!
边城的刀声 2010-10-19
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 leejelen 的回复:]

这么好玩。最好能完整点贴出来!
[/Quote]
leejelen 2010-10-19
  • 打赏
  • 举报
回复
这么好玩。最好能完整点贴出来!
边城的刀声 2010-10-19
  • 打赏
  • 举报
回复
你页面的Page_Load里有没有什么初始化之类的代码
Reecle 2010-10-19
  • 打赏
  • 举报
回复

小弟 不咋懂

我直接从后台 取 那个 textbox 的值 中文取到就是空

string aa=Server.UrlEncode(TextBox2.Text);
string bb = Server.UrlDecode(aa);

2L 说的是不是这样?(这样也是空)
Reecle 2010-10-19
  • 打赏
  • 举报
回复
Reecle 2010-10-19
  • 打赏
  • 举报
回复


zhang523012313 2010-10-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 net_lover 的回复:]
Server.UrlEncode("中文")
客户端
escape("中文")
或者encodeURIComponent("中文")
[/Quote]
就是字符串的编码格式,LZ你在那个控件属性看看,肯定可以取到中文的撒
whb147 2010-10-19
  • 打赏
  • 举报
回复
你编码一下看看
还有就是是不是你2个文件的编码方式不一样
Reecle 2010-10-19
  • 打赏
  • 举报
回复
哪位大牛 来帮帮忙 小弟急死了.
Reecle 2010-10-19
  • 打赏
  • 举报
回复
2 楼大哥说的 不怎么明白 大哥 说清楚点
孟子E章 2010-10-19
  • 打赏
  • 举报
回复
Server.UrlEncode("中文")
客户端
escape("中文")
或者encodeURIComponent("中文")
ruiandli 2010-10-19
  • 打赏
  • 举报
回复
编码出现问题了,如果编码不一样就会现你把说的那种问题
zekelove 2010-10-19
  • 打赏
  • 举报
回复
肯定是编码问题~~~

62,272

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧