经典美文

5U文学网 > 美文 > 经典美文 > stringliteralisunterminated的简单介绍

stringliteralisunterminated的简单介绍

| admin

Firefox浏览器每次打开新标签页时,都弹出javascript应用程序Error: unterminated string literal

尊敬的用户,您好!很高兴为您答疑

这个弹出框肯定不是firefox自带的,据分析可能是如下2种原因造成:

1、您之前安装了某种插件并损坏,故在新建标签时弹出错误句柄;

2、您的系统被病毒感染,而您进行过查杀,误删了部分必要文件,导致浏览器新建标签时调用出错。

希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。

亲们,这句有错吗?报这个错误:unterminated string literal

Javascript使用document.write(str)进行输出时,常提示下列错误:Error: unterminated string literal。

通常原因是输出字符str中包含换行符导致的。

建议将"替换成' 同一个字符串 不要手动换行。

百度编辑器unterminated string literal怎么解决

nterminated string literal提示,我百度了一下,发现是js中单引号、双引号、换行、回车 都是违反json规范,下面我们来处理一下。

template/bbs/post_run.htm

找到这段

var word_tpl = 'div class="pop_sensitive"\

div class="pop_top J_drag_handle"\

a href="#" class="pop_close J_close"关闭/a\

strong提示/strong\

/divdiv class="pop_cont"\

div class="not_content_mini" id="J_word_tip"/div\

/div\

div class="pop_bottom" id="J_word_bototm"/div\

/div',

改成

var word_tpl = 'div class="pop_sensitive"div class="pop_top J_drag_handle"a href="#" class="pop_close J_close"关闭/astrong提示/strong/divdiv class="pop_cont"div class="not_content_mini" id="J_word_tip"/div/div div class="pop_bottom" id="J_word_bototm"/div/div',

php unterminated string literal怎么解决

javascript使用document.write(str)进行输出时,常提示下列错误:

Error: unterminated string literal。通常原因是输出字符str中包含换行符导致的。

解决方法如下:

asp:

str=replace(str,vbcrlf,"",1,-1,1)

php:

$str = str_replace("\n", "", $str);

$str = str_replace("\r", "", $str);

然后再进行document.write(str)输出。

注:

jsp的对应函数:

public static final String htmlToCode(String s)

{

if(s == null)

{

return "";

} else

{ s = s.replace("\n\r", "br ");

s = s.replace("\r\n", "br ");//这才是正确的!

s= s.replace("\t", " ");

s =s.replace(" ", " ");

s=s.replace("\"", "\\"+"\"");//如果原文含有双引号,这一句最关键!!!!!!

return s;

}

}

如果这样写报错

s = s.replace("\n\r", "br ");

s = s.replace("\r\n", "br ");//这才是正确的!

s= s.replace("\t", " ");

s =s.replace(" ", " ");

s=s.replace("\"", "\\"+"\"");//如果原文含有双引号,这一句最关键!!!!!!

不加最后一句就会无法判断双引号报错,注意最后一句是用\"替换“,但是注意转义字符写法!!!

这是普通的解决方法,另外一种保留回车的方法

先将\r\n替换为br,然后再将\r与\n替换掉,而不是简单的舍弃为‘’。

function my_nl2br($s)

{

return str_replace("\n",'br',str_replace("\r",'br',str_replace("\r\n",'br',$s)));

}

unterminated string literal错误怎么解决

[html] view plain copy

select name="${item.name}" id="${item.id}" style="${item.styles}" class="commonInput longtext ${item.classes}"

option value="${item.value}"

/option

/select

因此在后台用replaceAll方法转换了"" ,""。

然后页面接收了一下:

[javascript] view plain copy

script type="text/javascript"

var isModify = "${isModify}";

if(isModify == 1){

document.getElementById("textarea1").innerHTML = "${contentTemp}";

alert("success");

}

/script

然后在firebug里报错鸟,unterminated string literal

Other...

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

在使用replaceAll()方法时需要注意,要用一个值去接收才能获取到转换后的字符串。看replaceAll()的API:

String java.lang.String.replace(CharSequence target,CharSequence replacement)

Replaces each substring of this string that matches the literal target sequence with the specified literal replacement sequence. The replacement proceeds from the beginning of the string to the end, for example, replacing "aa" with "b" in the string "aaa" will result in "ba" rather than "ab".

Parameters:

target The sequence of char values to be replaced

replacement The replacement sequence of char values

Returns:

The resulting string

Throws:

我一开始直接

[java] view plain copy

content.replaceAll("", "").replaceAll("", "");

还以为直接这样content内容就会变了。。。怎么运行都不对。。。。(╯‵□′)╯︵┻━┻

妈蛋真是被自己蠢哭了。。。QAQ

---------------------------------------------------------------------------------------------------------------------------------------------------------------

发现问题是因为换行识别不了,不是一个完整的字符串,因此需要将/r/n转换一下。

[java] view plain copy

@Override

protected String handleEdit(HttpServletRequest request,

HttpServletResponse response, Long objectId) throws Exception {

if(objectId != null ){

Element element = elementManager.getByObjectId(objectId);

String temp = element.getContent().replaceAll("", "").replaceAll("", "");

temp = temp.replace("\"", "\\"+"\"");

temp = temp.replaceAll("\r\n", "br ");

request.setAttribute("contentTemp", temp);

request.setAttribute("isModify", 1);

}

return super.handleEdit(request, response, objectId);

}

[java] view plain copy

temp = temp.replace("\"", "\\"+"\""); //转换引号

temp = temp.replaceAll("\r\n", "br "); //转换换行

OK....终于能正常显示了。

数据库里是这样的:

218130