在click处理程序中,似乎不能将变量传递给函数。因此,您必须始终全局地声明它们。关于这一点我说得对吗?
例如:
$("#modalCancel,#modalClose").click(function()
{
if(update == false)
{
modalCloseCancel(testcaseId);
}
else
{
modalCloseCancelUpdate(testcaseId, $("#radio-previous_"+testcaseId).val());
}
});
在这里,update和testcaseId是变化的变量。我不能将它们作为参数传递给function(),而是需要在处理程序上全局声明它们。我认为没有其他的way.So,以防下面有其他的函数,他们必须小心。
发布于 2019-11-11 15:09:05
您可以使用data-*
属性和.data
方法轻松地将变量存储在元素本身上:
$('.clickme').on('click',function(){
var update = $(this).data("update");
console.log(update);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button class="clickme" data-update="true">Click me (true)</button>
<button class="clickme" data-update="false">Click me (false)</button>
https://stackoverflow.com/questions/58803861
复制相似问题