Javascript 单击仅全局变量处理程序

Javascript 单击仅全局变量处理程序,javascript,jquery,Javascript,Jquery,在单击处理程序中,似乎不能将变量传递给函数。因此,您必须始终在全球范围内声明它们。我说的对吗 例如: $("#modalCancel,#modalClose").click(function() { if(update == false) { modalCloseCancel(testcaseId); } else { modalCloseCancelUpdate(testcaseId, $("#radio-previous_"+te

在单击处理程序中,似乎不能将变量传递给函数。因此,您必须始终在全球范围内声明它们。我说的对吗

例如:

$("#modalCancel,#modalClose").click(function()
{
   if(update == false)
   {
        modalCloseCancel(testcaseId);
   }
   else
   {
        modalCloseCancelUpdate(testcaseId, $("#radio-previous_"+testcaseId).val());
   }
});

这里update和testcaseId是变化的变量。我不能将它们作为参数传递给function(),而是需要在处理程序上方全局声明它们。我认为没有其他方法。所以,如果下面还有其他功能,它们必须小心

您可以使用
data-*
属性和
方法轻松地将变量存储在元素本身上

$('.clickme')。在('click',function()上{
var update=$(this.data(“update”);
控制台日志(更新);
});

单击我(真)

单击我(false)
能否添加有关函数上下文的更多信息?des
testcaseId
来自哪里?它只是一个变量。啊哈。好啊至少有一种方法。