在html字符串/concat()中插入javascript函数

在html字符串/concat()中插入javascript函数,javascript,jquery,html,Javascript,Jquery,Html,为了创建html/,我想对字符串进行压缩,如下所示: var html = "<ul>"; json.elements.forEach( function (tab) { html += "<li><img onclick=partager("; html += tab.title+","+tab.adresse+","+tab.image_url+","+tab.item_url+","+tab.url; html += "); sr

为了创建html
    /
,我想对字符串进行压缩,如下所示:

 var html = "<ul>";
 json.elements.forEach( function (tab)
 {
    html += "<li><img onclick=partager(";
    html += tab.title+","+tab.adresse+","+tab.image_url+","+tab.item_url+","+tab.url;
    html += "); src="+tab.image_url+" /><h3>"+tab.title+"</h3><p>"+tab.adresse+"</p></li>";
 });
 html += "</ul>";
var html=“
    ”; forEach(函数(选项卡) { html+=“
  • ”+tab.title+”“+tab.adrese+”

  • ”; }); html+=“
”;

请问如何在HTML中包含
标记中的javascript函数?它不是那样工作的…

似乎您忘记了在HTML参数(onclick)周围添加引号(“”):

${tab.title}
${tab.address}

` ).join(“”)+''
如果您不想使用ES6,这也可以:

let html = '<ul>' + json.elements.map(tab => 
  `<li>
    <img onclick="partager(${[tab.title, tab.addresse, tab.image_url, tab.item_url, tab.url].join(',')})" src=${tab.image_url} />
    <h3>${tab.title}</h3>
    <p>${tab.addresse}</p>
  </li>`
).join('') + '</ul>'
var html='
    ' forEach(函数(选项卡){ html+='
  • '+tab.title+''+tab.address+'

  • ' }) html+='
'
快到了!非常感谢。我怎样才能引用这5个值进行保护<代码>html+=[tab.title,tab.adrese,tab.image_url,tab.item_url,tab.url_infos].join(',')因为我有:
partager(博物馆xxxx,拉波尔街2号)
我想要这个
partager(“博物馆xxxx,拉波尔街2号”)
var html = '<ul>'
json.elements.forEach(function(tab) {
  html += '<li><img onclick="partager('
  html += [tab.title, tab.addresse, tab.image_url, tab.item_url, tab.url].join(',')
  html += ')" src="' + tab.image_url + ' /><h3>' + tab.title + '</h3><p>' + tab.addresse + '</p></li>'
})
html += '</ul>'