ITPub博客

首页 > 应用开发 > IT综合 > Asp.net中与codePage="936"有关的css失效等奇怪问题的解决办法

Asp.net中与codePage="936"有关的css失效等奇怪问题的解决办法

原创 IT综合 作者:tingantang 时间:2007-11-01 21:20:56 0 删除 编辑
Asp.net中与codePage="936"有关的css失效等奇怪问题的解决办法
时间:2007-05-03 阅读:80 类型:转载 编辑:陈姐
[@more@]最近手头有个简单的项目,比平时写的要简单很多,但是却很不顺利,出现了好多奇怪的问题, 比如今天就遇到一个奇怪的问题,这里我讲一下解决全过程.
客户要求,在DropDownList中选择第二项时,有一个TextBox要不可用,本来这种问题是很简单的,将DropDownList的AutoPostBack属性设置为"True",然后在DropDownList的SelectedIndexChanged事件里写一下代码:

if(ddlFrame.SelectedIndex == 0) //如果选中的是第一项
{
txtFrameID.Enabled = true;
}
else
{
txtFrameID.Text = "";
txtFrameID.Enabled = false;
}

如果是平时,这样子就解决问题了,可是今天就出现奇怪的问题,无论我怎么选择DropDownList,它都在刷新后选中第一项,怎么也选不中第二项,我一开始以为是DropDownList的EnableViewState属性被我设成false了,结果发现该属性值为true,这就奇怪了,怎么会选不中第二项呢?
于是我把以前写的正常页面用记事本打开,来对比一下两个页面有什么区别,发现了有问题的页面顶部有一句话可疑:

<%@ Page language="c#" Codebehind="BookInfo.Aspx.cs" AutoEventWireup="false" Inherits="WebS.BookInfo" codePage="936"%>

大家一定发现了,在最后有一句:codePage="936",这是什么东西?查了一下资料,找到了这个结论:

<%@ codepage=936%>简体中文
<%@ codepage=950%>繁体中文
<%@ codepage=65001%>UTF-8

原来codePage="936"表示的是简体中文,于是我将它删除,发现DropDownList就能选中第二项了,,可是新问题又出来了:css好像失效了,页面变得很乱.于是我切换到VS2003,在页面属性中,将页面的字符集设置为GB2312,保存后发现页面又正常了,然后那个下拉菜单又怎么选都停在第一项上,我突然想起来,web.config文件里也有个语言设置的,于是我将
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
这两个都设置成了gb2312,保存后,发现页面正常了,下拉菜单也能选中第二项了,问题解决了,哈哈!开心!

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10771986/viewspace-980388/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    27
  • 访问量
    129874