JS拼凑DOM元素,运行时出现“Uncaught SyntaxError: missing ) after argument list ”的错误,记录以便以后查看
报错全代码
function pageLinks(data) {
var str = '';
var prev_page_url = data.prev_page_url;
var path = data.path+"?page=";
var next_page_url = data.next_page_url;
if (data.last_page!=1){
str+="<ul class='pagination'>";
if (data.prev_page_url==null){
str+="<li class='page-item disabled'><span class='page-link'>‹</span></li>";
} else {
str+="<li class='page-item'><a class='page-link' href='javascript:;' onclick='pageData("+prev_page_url+")' rel='prev'>‹</a></li>";
}
for(var i=1 ;i<=data.last_page;i++ ){
if (i==data.current_page){
str+="<li class='page-item active'><span class='page-link'>"+i+"</span></li>";
} else {
str+="<li class='page-item'><a class='page-link' href='javascript:;' onclick='pageData("+path+i+")' >"+i+"</a></li>";
}
}
if (data.next_page_url==null){
str+="<li class='page-item disabled'><span class='page-link'>›</span></li>";
} else {
str+="<li class='page-item'><a class='page-link' href='javascript:;' onclick='pageData("+next_page_url+")' rel='next'>›</a></li>";
}
str+="</ul>";
}
return str;
}
报错位置
onclick内数据的拼接错误
onclick='pageData("+prev_page_url+")'
解决方案
添加双引号,使用转义符将双引号进行转义
onclick='pageData(\""+prev_page_url+"\")'
完整代码
function pageLinks(data) {
var str = '';
var prev_page_url = data.prev_page_url;
var path = data.path+"?page=";
var next_page_url = data.next_page_url;
if (data.last_page!=1){
str+="<ul class='pagination'>";
if (data.prev_page_url==null){
str+="<li class='page-item disabled'><span class='page-link'>‹</span></li>";
} else {
str+="<li class='page-item'><a class='page-link' href='javascript:;' onclick='pageData(\""+prev_page_url+"\")' rel='prev'>‹</a></li>";
}
for(var i=1 ;i<=data.last_page;i++ ){
if (i==data.current_page){
str+="<li class='page-item active'><span class='page-link'>"+i+"</span></li>";
} else {
str+="<li class='page-item'><a class='page-link' href='javascript:;' onclick='pageData(\""+path+i+"\")' >"+i+"</a></li>";
}
}
if (data.next_page_url==null){
str+="<li class='page-item disabled'><span class='page-link'>›</span></li>";
} else {
str+="<li class='page-item'><a class='page-link' href='javascript:;' onclick='pageData(\""+next_page_url+"\")' rel='next'>›</a></li>";
}
str+="</ul>";
}
return str;
}