asp.net 中html文本输入自动换行换行

问题是这样的:我的页面中有个多行文本输入框,当输入中文的时候一切正常但是当输入英文或者数字的时候造成的问题就是显示的时候不能够像输入中文一样正常换行以前我是用的一个函数来... 问题是这样的: 我的页面中有个多行文本输入框,当输入中文的时候一切正常 但是当输入英文或者数字的时候 造成的问题就是显示的时候不能够像输入中文一样正常换行 以前我是用的一个函数来递归判断用户是否换行了
public string GetContent(string content, int startIndex)
{
if (content.Length < startIndex)
{
return content;
}
string a = content.Insert(startIndex, "\r\n"); // \r\n回车换行符 长度是2
startIndex += 112;
return GetContent(a, startIndex);
}
但是想想还是有点小bug 就是如果用户输入了换行符 也就是敲了回车 我却画蛇添足加了个换行符 请大家指教有什么好办法解决这个问题
展开
 我来答
ThinkIBM
2010-11-18 · TA获得超过5289个赞
知道大有可为答主
回答量:3263
采纳率:0%
帮助的人:5472万
展开全部
像输入中文一样正常换行
你的意思是放在页面显示时,使用样式:white-space不会正常换行吧
这个问题其实不用考虑,

之所以输入英文或者数字的时候,不会换行,是因为浏览器认为这是一个完整的单词,所以不换行,而中文,一个字就被认为是一个完整的单词,所以会换行

而实际上,也不存在无限长度的英文或数字
一般的英文单词也就最多10几个字母,后面就会跟空格或符号,这里浏览器就会换行了,只有测试人员或无聊的人,会打一串无意义的英文或者数字

如果你一定要考虑这个问题
那么在你Insert的时候,先从startIndex 开始判断112个字符里有没有换行符,有的话就把startIndex 设置为这个换行符的位置,再加112
sonichu
2010-11-18 · TA获得超过508个赞
知道小有建树答主
回答量:375
采纳率:100%
帮助的人:314万
展开全部
如果你非要用加换行符的话,你可以按每行来算啊,首先把那段文本放在一个数组中,如果某行中有个超出了你的长度的,就加入换行符,如果没有的话,就不改动。再把数组合并起来就成了你要求的字符串了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式