今天遇到一问题,一个页面的textarea元素的值需要在iframe中赋予,但是其中有很多换行。弄了好久都是说未结束的字符串常量,于是一直google。最终终于试出来了一个方法。记录一下,以后用到了直接过来拿了。
iframe的内容
<script langage="javascript">
<%
String mytextarea= (String)request.getAttribute("mytextarea");
if(mytextarea!=null){
mytextarea = mytextarea.replaceAll("\r\n", "~~");
out.println("parent.myForm.mytextarea.value='" + mytextarea + "'.replace(new RegExp('~~', 'g'), '\\r');");
}
%>
</script>
先把字符串的换行符换成了字符“~~”,可以随便写一个别人不可能输入的值。然后用js自己的replace方法替换。回车符前面一定要加一个\不然会报错的。