日期:2014-05-19  浏览次数:20440 次

高分求解﹕為何在TextBox控件(設置MultiLine=true)﹐提交表單時﹐這個文本框中的內容﹕換行符沒了??
請問我的表單中有TextBox控件﹐設置為多行文本框了﹐
然后在文本框中加入几行文字﹐
在提交的時候卻發現這几行文字變成了一行﹐郁悶吶。
我直接設斷點查看這個TextBox的值也是一樣。

我的表單設置了encytype= "multipart/form-data ",如果不設置的話﹐正常可以讀到
文本框內容中有 "\r\n "的換行符﹐但是我還有上傳控件在這個表單里﹐沒辦法.
而且我單獨用一個簡單的測試頁來測試一下﹐測試頁上僅有一個textbox和一個button,表單仍然設成 <form   id=form1   encytype= "multipart/form-data "   runat=server> ,發現﹕
在button的click事件中設斷點讀textbox的值時﹐這個值是正常的﹐能取到換行符 "\r\n ",     再郁悶!

難道是我的表單是在框架中﹖又或是在一個模式窗口中﹖
請高手指點﹐100分送上!

------解决方案--------------------
使用编辑器吧!比如Freetextbox等!
------解决方案--------------------
应该不会啊,是不是字符串做其他处理了?
------解决方案--------------------
还真没有注意过,用下encoding呢?
------解决方案--------------------
我在本地试了一下,都可以取到\r\n   真奇怪了
------解决方案--------------------
ls的,呵呵,有意思.
------解决方案--------------------
//输入数据时候转换
public static string FilterTestHtml(string text)
{
string validSql = " ";
if (text != null)
{
text = text.Replace( " ", "&nbsp; ");
text = text.Replace( "&amp; ", "& ");
text = text.Replace( "\n ", " <br> ");
validSql = text;
}
return validSql;
}
//从数据库读取回来的时候
public static string UnFilterTestHtml(string text)
{
string validSql = " ";
if (text != null)
{
text = text.Replace( "&nbsp; ", " ");
text = text.Replace( " <br> ", "\n ");
//text = text.Replace( "> ", "&gt; ");
validSql = text;
}
return validSql;
}
------解决方案--------------------
用JS写的HTML编辑器。
------解决方案--------------------
up!帮顶顶!
------解决方案--------------------


TextBox不支持换行,要控制

====================================
有道理
------解决方案--------------------
要改,或用多动能文本编辑器!