Jquery 使用onclick事件将变量传递给动态创建的按钮的函数

Jquery 使用onclick事件将变量传递给动态创建的按钮的函数,jquery,Jquery,请在下面查找代码。当我试图将变量tmp_lnk从onclick事件传递给函数时,它会抛出一个错误,即没有定义tmp_lnk。如何将变量传递给函数 if(fig_name[1]==img_name) { var tmp_lnk = "Supplementary Notes for Images/"+"6H-"+img_name/img_name+".pdf" $("#notes1").append('<div><a onclick="On_Click(tmp_lnk)" id="

请在下面查找代码。当我试图将变量tmp_lnk从onclick事件传递给函数时,它会抛出一个错误,即没有定义tmp_lnk。如何将变量传递给函数

if(fig_name[1]==img_name)
{
var tmp_lnk = "Supplementary Notes for Images/"+"6H-"+img_name/img_name+".pdf"
$("#notes1").append('<div><a onclick="On_Click(tmp_lnk)" id="closebutton">NOTES</a></div>')
break;
}}

function On_Click(tmp_link)
{
    window.open("tmp_lnk");
}
if(图名称[1]==img\u名称)
{
var tmp_lnk=“图像补充说明/”+“6H-“+img_名称/img_名称+”.pdf”
$(“#notes1”)。追加('NOTES')
打破
}}
点击功能(tmp链接)
{
窗口打开(“tmp_lnk”);
}

}

或者,这个怎么样:

$("#notes1").append('<div><a onclick="On_Click('+tmp_lnk+')" id="closebutton">NOTES</a></div>')
$(“#notes1”).append('NOTES'))

这将使变量内容写入方法调用,解决您的问题。

因为您在if中声明tmp\u lnk,使其成为全局的,或者在if的外侧声明

var tmp_lnk
if(fig_name[1]==img_name)
{
tmp_lnk = "Supplementary Notes for Images/"+"6H-"+img_name/img_name+".pdf"
$("#notes1").append('<div><a onclick="On_Click(tmp_lnk)" id="closebutton">NOTES</a></div>')
break;
}}

function On_Click(tmp_link)
{
    window.open("tmp_lnk");
}
}
var tmp\u lnk
if(图名称[1]==img\U名称)
{
tmp_lnk=“图像补充说明/”+“6H-“+img_名称/img_名称+”.pdf”
$(“#注释1”)。附加('
$("#notes1").append('<div><a onclick="On_Click(' + tmp_lnk+ ')" id="closebutton">NOTES</a></div>')
function On_Click(tmp_lnk)
{
    window.open(tmp_lnk);
}