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


        最近手头有个简单的项目,比平时写的要简单很多,但是却很不顺利,出现了好多奇怪的问题, 比如今天就遇到一个奇怪的问题,这里我讲一下解决全过程.
        客户要求,在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文件里也有个语言设置的,于是我将
<globalization
            requestEncoding="gb2312"
            responseEncoding="gb2312"
   />
这两个都设置成了gb2312,保存后,发现页面正常了,下拉菜单也能选中第二项了,问题解决了,哈哈!开心!
    

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kgdiwss

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值