您是否遇到过这个令人讨厌的错误消息:“未确定的字符串文字”。
好的,我有3次您可能会遇到此错误,以及如何针对每种情况修复此错误。
- 多行字符串
- 字符串格式错误(错误字符)
- 尖括号
多行字符串
如果您尝试为一个变量分配一个涵盖多行的字符串,则可能会看到“ Undetermined String Literal”错误。 为了解决这个问题,您必须在每行之后使用Javascript转义字符反斜杠(“”)来告诉解释器该行的结尾并将字符串连接在一起。
另一种方法是简单地将您的字符串分成几部分,然后将它们加在一起。
字符串格式错误(错误字符)
如果尝试将HTML分配给变量,则可能会看到“未确定的字符串文字”错误。 可能是您通过Ajax从其他位置加载了HTML,现在正在尝试使用/检查它。 在尝试分配字符串之前,请使用以下代码清除字符串中的错误字符。
尖括号
如果您尝试在字符串中使用尖括号&#xff08;“>”&#xff06;“ <”&#xff09;&#xff0c;则在尝试通过Ajax提交字符串数据时&#xff0c;可能会看到“未确定的字符串文字”错误。[js] var contentQuery &#61;&#39; 前10个位置&#xff0c;例如“ abc”&#39;&#xff1b;
//注意&#xff1a;abc替换实际的查询
[/ js]
事实证明&#xff0c;这是由安全查询尖括号引起的错误&#xff0c;我不得不通过在编码和通过AJAX发送请求之前添加尖括号&#xff08;“ <“&#xff06;”>”&#xff09;来破解它&#xff08;如此&#xff09; 。
$.ajax({type: &#39;POST&#39;,url: &#39;/ajax/abc&#39;,data: &#39;content&#61;&#39; &#43; encodeURIComponent(&#39;<&#39;&#43;contentQuery&#43;&#39;>&#39;),dataType: &#39;html&#39;,success: function(data){console.log(data);//display results$(&#39;#results&#39;).html(data);}
});
尽管不确定&#xff0c;这甚至可能是jQuery中的错误。 当您在萤火虫中测试时&#xff0c;它仍然有效&#xff01; 所以也许不...
var fine &#61; &#39;
first 10 location like "abc"
&#39;;
console.log(fine);
From: https://www.sitepoint.com/jquery-undetermined-string-literal-error/