如何使用内部HTML传递JavaScript参数
我是JavaScript新手,目前正陷入一个问题。基本上,我使用API搜索动画,获取html图像、概要和名称,并将它们放在一个表中。那很好。我试图为表中的每个名称添加一个如何使用内部HTML传递JavaScript参数,javascript,html,Javascript,Html,我是JavaScript新手,目前正陷入一个问题。基本上,我使用API搜索动画,获取html图像、概要和名称,并将它们放在一个表中。那很好。我试图为表中的每个名称添加一个onlick,以使用动画名称作为参数执行函数。我尝试过使用转义字符“\”,但没有成功。以下是我每行的代码: nameAndSynopsis.innerHTML = "<table style='border: 1px solid black'><tr><td style='color:blue' o
onlick
,以使用动画名称作为参数执行函数。我尝试过使用转义字符“\”,但没有成功。以下是我每行的代码:
nameAndSynopsis.innerHTML = "<table style='border: 1px solid black'><tr><td style='color:blue' onclick='getEpisodes(\'" + anime_name + "\')'>" + anime_name + "</td></tr><br><br><br><tr><td>" + anime_synopsis + "</td></tr></table>";`
任何帮助都将不胜感激。请尝试使用,而不是像这样使用所有引号
nameAndSynopsis.innerHTML = `<table style='border: 1px solid black'><tr><td style='color:blue' onclick=getEpisodes(${anime_name})> ${anime_name} </td></tr><br><br><br><tr><td>${anime_synopsis}</td></tr></table>`
name和synopsis.innerHTML=`${anime\u name}
${anime\u synopsis}`
您在属性值周围使用单引号onclick='如果必须使用引号,请看下面的操作方法:
var functionname = "getEpisodes('" + anime_name + "')";
nameAndSynopsis.innerHTML = '<table style="border: 1px solid black"><tr><td style="color:blue" onclick="' +functionname+ '">' + anime_name + '</td></tr><br><br><br><tr><td>' + anime_synopsis + '</td></tr></table>';
var functionname=“getscents(“+anime_name+”)”;
nameAndSynopsis.innerHTML=''+anime\u name+'
'+anime\u synopsis+'';
我在单独的行中添加了functionname来简化它。它也可以在单行中完成
函数(某物){
控制台日志(“正常……”);
}
var nameAndSynopsis=document.getElementById(“nameAndSynopsis”);
var anime\u name=“anime\u name”;
var anime\u synopsis=“anime\u synopsis”;
var functionname=“getscents(“+anime_name+”)”;
nameAndSynopsis.innerHTML=''+anime\u name+'
'+anime\u synopsis+'';
您的代码以一个未知字符串结尾,就在末尾
</table>";` <---- remove this last string
“;`不要使用onclick
。使用addEventListener
在HTML之外附加事件侦听器。请看这是否回答了您的问题?不确定onclick=getscents(${anime\u name})
如何工作,除非它是一个数字。如果它是一个字符串,onclick=getscents(abcdef)
将抛出一个错误。
onclick='getEpisodes(\""+anime_name+"\")'
onclick=\"getEpisodes('"+anime_name+"')\"
var functionname = "getEpisodes('" + anime_name + "')";
nameAndSynopsis.innerHTML = '<table style="border: 1px solid black"><tr><td style="color:blue" onclick="' +functionname+ '">' + anime_name + '</td></tr><br><br><br><tr><td>' + anime_synopsis + '</td></tr></table>';
</table>";` <---- remove this last string
</table>";