我正在构建一个HTML scrubber,它基本上是一个用于清理有问题的html页面的内部工具。我正在使用ASP.NET 3.5将该工具构建为Web应用程序。
它由一个按钮和两个多行文本框组成。
我正在对其进行编程,因此您将要删除的HTML粘贴到顶部框中。点击按钮,清除的HTML显示在底部框中。 (一些正则表达式方法正在执行擦洗)。
一切似乎都运行良好,除了擦除的HTML在一行上发送到底部文本框。所有回车和标签都被删除。基本上我将它与这个简单的代码隐藏代码配对,它将删除格式化。
TransformHTML = RawHTML.Text;
BEHtml.Text = TransformHTML;
如何确保在分配时第一个文本框的格式将传递到第二个文本框?感谢。
更新:似乎对我正在做的事情有点困惑。我给文本框一组HTML,如下所示:
<tr>
<td align="left" valign="middle" colspan="6" style="padding-left: 5px;"><strong><a name="Cell_line" id="Cell_line"></a>CELL LINE REFERENCE TABLE</strong> </td>
</tr>
当我点击提交时,按钮的点击按钮具有
的来源TransformHTML = RawHTML.Text;
BEHtml.Text = TransformHTML;
基本上将Textbox.Text字符串复制到字符串变量,然后将该字符串变量分配给另一个Textbox.Text我得到以下输出:
<tr> <td align="left" valign="middle" colspan="6" style="padding-left: 5px;"><strong><a name="Cell_line" id="Cell_line"></a>CELL LINE REFERENCE TABLE</strong> </td> </tr>
我喜欢它,所以当我点击提交时,它是多线的而不是单行的。
就擦洗HTML而言,它与我提供的示例无关。
答案 0 :(得分:1)
通过剥离所有HTML不是你剥离所有格式?如果你想保留它,你可能需要不那么激烈地剥离......
另外,请确保为第二个文本框设置了wordwrap选项(可能这么简单吗?)
来自原始提问者的答案:上面的答案让我再次重新检查我的ASP.NET TextBox标记,并且它缺少TextMode =“MultiLine”
答案 1 :(得分:-1)
剥离HTML时,不要删除BR,而是将它们替换为\ r \ n,以便它知道要换行。