zoukankan      html  css  js  c++  java
  • VS2005中TextBox的ReadOnly属性导致的问题

    开发环境:vs2005  asp.net2.0

    遇到一个很奇怪的问题

    上图中,上边用GridView,下边用FormView来实现。为了实现在客户端的处理,我把“类别”“名称”“型号”“计量单位”设置为只读的,目的是不让用户手动填写,而是通过Javascript方式来选择,同时,为了保证用户必须输入,还使用了验证控件。

    材料类别输入框的aspx页面代码如下:(注意ReadOnly="true" 其他不必关注

    <asp:TextBox ID="tbTypeName" runat="server" Text='<%# Eval("TypeName") %>' ReadOnly="true"

                                                        OnLoad="tbTypeName_Load"></asp:TextBox>

    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="tbTypeName" ErrorMessage="*"></asp:RequiredFieldValidator>

     

    FormViewEditItemTemplateInsertItemTemplate中使用了完全相同的代码,但是奇怪的是:编辑操作可以正确进行,但是添加操作则不能完成

    在下图中,我用脚本选择红框中的内容,看起来是正常的;


    但是,当我点击“插入”,则会出现以下情况:


    系统认为我的“类别”“名称”“型号”“计量单位”都为空,所以,不允许提交。

     

    参照网友给出的解决方法(见帖子“ASP.NET 2.0ReadOnlyTextBox”),去掉了只读属性,而是改用 TextBox1.Attributes["readonly"] = "true"; 后问题解决。

     

    但是,我仍然感到奇怪的是:为何我原先的方式在编辑时是可以的???

  • 相关阅读:
    web.config配置错误的后果
    重装VS.NET碰到:IDE 未能加载 Dte.olb
    初次使用Wix
    typedef
    [WTL] Accelerator
    在浏览器中粘贴时替换剪贴板数据
    自定义浏览器
    关于MSHTML
    [WTL] STLport安装指南
    [WTL] WTL7.5中CFileDialog用'\0'过滤
  • 原文地址:https://www.cnblogs.com/gaotaozhaolei/p/750483.html
Copyright © 2011-2022 走看看