【问题标题】:Is This Possible? Make Certain Lines in a ASP.NET Textbox Read-Only这可能吗?将 ASP.NET 文本框中的某些行设为只读
【发布时间】:2012-06-11 17:39:58
【问题描述】:

我的页面上有一个文本框来接受用户输入,我希望在文本框中以只读方式显示几行作为提示。例如,

(read-only) Begin Input Category: User
....
....
....
....
(read-only) End Input Category: User

这甚至可以通过 jQuery 或 CSS 中的一些技巧来实现吗?

【问题讨论】:

    标签: jquery asp.net user-controls textbox html.textbox


    【解决方案1】:

    不,您不能将文本框的各个行设为只读。

    但是,您可以将原始文本的单独副本保存在变量中,并且每次用户在文本框中键入内容时进行比较,如果他们触摸了只读部分,则将其修复回来,但这很可能容易出错.

    更好的选择是更像母版页的工作方式,主模板定义用户可编辑区域,并且您为用户提供输入这些用户定义区域(单独的文本框?XML分隔文本?)的地方,然后你可以渲染一个合并的视图

    【讨论】:

      【解决方案2】:

      我相信不可能。尝试使用只读行放置 2 个标签,与顶部和底部的文本框相邻,边距为 0 ,顶部标签的底部边框 0 ,底部标签的顶部边框 0 ,文本框的顶部和底部边框为零。标签和文本框的长度应该相等。这可能会让人感觉文本框的顶行和底行是只读的。发布表单时使用javascript发布顶部标签+文本框+底部标签的数据组合。

      或者你最多可以做的是显示上面的文本,当用户将光标输入文本框时,然后删除文本。再次,当他将光标移出(焦点超出文本框)然后检查文本框是否为空,如果为空则放回该文本。提交表单时,如果文本不存在,您可以将文本附加并添加回文本框数据。

      【讨论】:

        【解决方案3】:

        如何使用 wartermark 或类似技术使水印保持(而不是在文本框处于焦点时消失)但只读?

        【讨论】:

          猜你喜欢
          • 2011-02-02
          • 1970-01-01
          • 2012-07-29
          • 1970-01-01
          • 2013-08-10
          • 2020-04-12
          • 1970-01-01
          • 2018-05-09
          • 2013-11-28
          相关资源
          最近更新 更多