Javascript 如何获取选择器';Onclick上的s变量

Javascript 如何获取选择器';Onclick上的s变量,javascript,jquery,html,css,Javascript,Jquery,Html,Css,当一个选择器被分配给一个变量时,我需要在onclick上获取该变量的名称,例如我创建了一个 var $main_img1 = $("<div/>").addClass('add1').appendTo($('#main_container')); var $main_img2 = $("<div/>").addClass('add2').appendTo($('#main_container')); $main_img1.click(function() {

当一个选择器被分配给一个变量时,我需要在
onclick上获取该变量的名称,例如我创建了一个

 var $main_img1 = $("<div/>").addClass('add1').appendTo($('#main_container'));
 var $main_img2 = $("<div/>").addClass('add2').appendTo($('#main_container'));

 $main_img1.click(function()
 {
     get_id()
 });

 $main_img2.click(function()
 {
      get_id()
 });
 function get_id(event)
 {
      console.log($(this))
      alert('i need to get selector variable on click')
 }
var$main_img1=$(“”)。addClass('add1')。appendTo($('main_container'));
var$main_img2=$(“”)。addClass('add2')。appendTo($('main_container'));
$main\u img1.单击(函数()
{
get_id()
});
$main\u img2.单击(函数()
{
get_id()
});
函数get_id(事件)
{
console.log($(this))
警报('单击时需要获取选择器变量')
}

当我单击相应的div时,输出应该是$main\u img1$main\u img2,这里有一个解决方案,但不确定如何使用它

使用数组获取变量名

JS


我建议一种解决方法。。看看它是否对你有帮助。在相应的div中添加一个隐藏元素,并将变量名作为文本添加到其中。我稍微修改了get_id()方法,从divs隐藏元素中获取变量名

function get_id()
{
   console.log($(this))
   var selVar= $(this).parent().find('input:hidden:first').text(); 
   alert('selector variable' + selVar);
}

这对你有用

您可以从元素的类中进行猜测,然后单击它并使用自反性

要知道单击的元素,只需使用
event.target
,其中
event
是在
click
函数中传递的变量。看看这个例子

get\u id
方法现在看起来如下所示:

function get_id(event) {
    console.log(event.target)
}

event.target
返回的值与声明它的变量返回的值相同(
$main\u img1
$main\u img2
).

将变量名作为属性或id添加到相应的div中,然后您可以通过选择div属性来获取变量名。任何特定原因您希望变量名与之相关:我的要求是在分配给任何选择器时仅获取变量名。。。这就是我hanging@PraJen对我的评论有什么想法吗?我也知道要用很多不同的方式来表达@karan。。但是我想要我的问题相关的答案。。。如果不使用任何额外的数组等,您可以像event.target.id这样简单地制作一些类似的东西吗。。因为我需要对许多变量使用这个函数。。而且还需要从中分割值…addClass('add1 add')如果您添加另一个类,我的样式将不会更新。。我将在dynamic中添加另一个类。基本上,您只需要在所有
div
中添加一个关系。除了
.add
之外,您还可以将一个类添加到它们的父div中,并使用父div获取索引。我没有得到我的输出:(检查这个小提琴。这很好。您需要向它添加一个隐藏元素和变量名。变量$main\u img1和$main\u img2也是。不?它只是完全返回div元素
function get_id()
{
   console.log($(this))
   var selVar= $(this).parent().find('input:hidden:first').text(); 
   alert('selector variable' + selVar);
}
function get_id(event) {
    console.log(event.target)
}