【问题标题】:How to stop Gridview encoding my text on edit如何在编辑时停止 Gridview 对我的文本进行编码
【发布时间】:2010-10-16 11:59:59
【问题描述】:

我之前尝试过问这个问题,但是我没有收到正确的回答。 我在我设计的站点的管理区域中使用 GridView。我使用 DetailsView 将数据插入数据库,并使用 Gridview 编辑和删除数据。

我的查询是:当我在 DetailsView 中添加数据时,我输入如下数据: “PR Murphy & Associates”注意“&”。

发生的事情是,当它在网格视图中显示数据时,它显示为“PR Murphy & Associates”,但是当我单击编辑按钮时,它显示“PR Murphy & Associates”。注意编码的 & 符号。

我的问题是我根本不希望代码对 & 符号进行 htmlencode。我是 ASP.NET 的新手,不知道如何实现这个目标。

IE 是将数据插入数据库时​​对字符串进行编码的DetailsView。我可以使用什么代码来阻止这种情况的发生以及我需要针对什么事件。

在我之前的回复中,有人建议我在 gridview 中设置 HTMLEncode="False"。我已经尝试过使用绑定字段,但没有任何区别。我还需要将此字段作为 GridView 中的 TemplateField,以便我可以对条目执行一些错误处理。

我希望这是有道理的,有人可以指导我正确的方向。

谢谢

【问题讨论】:

标签: asp.net html html-encode


【解决方案1】:

我想你可以用你的模板调用一个方法,将 & 再次替换为 &。由于您想要一个 TemplateField,这将是五分钟的修复,可能不是最好的方法,但会在紧要关头工作。

粘贴一些代码,以便我们编辑/帮助。

【讨论】:

    【解决方案2】:

    如果您发现无法更改控件的行为以返回未编码的值,那么您可能会很高兴了解HtmlDecode

    【讨论】:

      【解决方案3】:

      应该被编码。如果你的值是AT&T,你最终的 HTML 应该是这样的:

      <input type="text" value="AT&amp;T" />
      

      邮政编码和输出的 HTML 如果这不是您所看到的。

      【讨论】:

        猜你喜欢
        • 2015-10-22
        • 1970-01-01
        • 2013-02-24
        • 2023-03-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-15
        • 2019-06-25
        相关资源
        最近更新 更多