[英]html syntax error in jQuery.ajax funciton?
我在$ .ajax函数中操纵jSON数组,但对其语法感到困惑。 存在错误,找不到它。
if(value['newVar'] === 1)
{
$productContainer.append("<div id='productBox' class='grid_3'>\n\
<a href='product.jsp?id="+value['id']+"'><img src='"+value["image"]+"'/></a><br/>\n\
<a href='product.jsp?id="+value['id']+"'><span class='black'>"+value['name']+"</span></a><br/>\n\
<span class='black'>By "+value['company']+"</span><br/><span class='red'>RS."+value['price']+"</span>\n\
<br/><br/><a href='#' onclick="foo(this)" pid="+value['id']+">REMOVE</a></div>");
}
错误发生在if块中,并位于RS."+value['price']+"</span>\\n\\
后的第四行RS."+value['price']+"</span>\\n\\
它表示Uncaught SyntaxError: missing ) after argument list
缺少语句Uncaught SyntaxError: missing ) after argument list
。 我认为错误是我写onclick="foo(this)"
有什么帮助吗?
用双引号替换双引号。 您用双引号终止字符串并创建语法错误:
...<a href='#' onclick='foo(this)' pid='"+value['id']+"'>
该错误是由于最后一行的引号滥用: onclick="foo(this)"
。
您还缺少两个单引号...
(在字符串中的某处...不会引起实际错误,但是稍后在生成的HTML中会出现一些错误)。
您可以使用您选择的引号作为要附加的字符串包装器...
而另一个用于字符串内部。
但是您必须提防不要“混合”它们! 一个是字符串包装器,另一个是字符串的一部分。
if(value['newVar'] === 1){
$productContainer.append("<div id='productBox' class='grid_3'>\n"+
"<a href='product.jsp?id='" +value['id']+ "'><img src='" +value["image"]+ "'/></a><br/>\n"+
"<a href='product.jsp?id='" +value['id']+ "'><span class='black'>" +value['name']+ "</span></a><br/>\n"+
"<span class='black'>By " +value['company']+ "</span><br/><span class='red'>RS." +value['price']+ "</span>\n"+
"<br/><br/><a href='#' onclick='foo(this)' pid=" +value['id']+ ">REMOVE</a></div>");
}
技巧:
+
号连接您的行。 \\
,这是一种更好的做法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.