网页编程 - 用替换法解决空格和换行问题

本人是ASP初学者,在制作动态网页显示文本时遇到空格和换行的问题,曾用过N种方法(包括用预先格式化),都未能如愿解决,后经多方查找,收集资料,终于基本解决。希望对像我这样的初学者有所帮助,也希望高手不吝赐更好的方法

1.空格问题:

在表单里输入空格,提交完毕,在显示页面往往不显示空格,使得难以排版,非常不爽!

原因有两种,一种是当你在未打开任何中文输入法,直接在网页里按空格键,另一种是当你在某种输入法的半角状态下输入空格。IE浏览器是不会显示这两种空格的,只有全角的空格和HTML内建的 才会显示。

解决方法:在网页源码中用 替换上文提及的两种不显示的空格。

具体如下:在网页的表单中输入想要替换的空格,然后右键复制它,替换到下面代码打*处:

content="Replace"(content,"*"," ")

content是你在网页中定义的字符串变量,把要显的的动态文本赋值给它就行了,名字不一定要content,随你取,不用多说了吧!

因为要替换上面的两种情况,所以要输入两种不同的空格,分两次替换。

没看明白吗,那这再说得直接点:

当你在未打开任何中文输入法时,在网页的表单中输入空格,然后右键复制它,替换到下面第一行代码打*处;然后开启中文输入法,切换到半角状态,再在网页的表单中输入空格,然后右键复制它,替换到下面第二行代码打*处。

content="Replace"(content,"*"," ")

content="Replace"(content,"*"," ")

好了,可以用response.write content输出了。

2.换行问题:

在表单里输入到行末,便会自动换行,但提交完毕,在显示页面往往不换行,难到每次都要在行末按下回车吗,当然不用,请看:

原因是自动换行符不能在IE浏览器显示,所以解决方法是用

来替换自动换行符vbCrLf,具体如下:

content="Replace"(content,vbCrLf,"

")

这样,就能分行显示了。

英文字母的换行

div align="left" style="word-break:break-all">