2017-01-12 5 views
0

У меня есть несколько кнопок на моей стороне, все они имеют идентификаторы «1» - «10». У меня есть функция, вызываемая при нажатии кнопок, и я хотел бы, чтобы эта функция считывала идентификатор кнопок и сохраняла ее как целочисленную переменную. это то, что у меня есть до сих пор:Сохранение идентификатора кнопки, нажатой в целочисленной переменной

Редактировать: Я обновил свой код с предложением из ответов. Пока нет успеха. Он не сигнализирует мне ID.

JS/JQuery

var transform = function(obj){ 
    var id = obj.id; 
    alert(id);  
} 

HTML

<a href="JavaScript: transform(this)" id="b1"> 

<div class = "test" > </div> 
</a> 

CSS

.test { 
     position: absolute; 
     width: 20%; 
     height: 10%; 
     background-color: black; 

    } 

ответ

1

Вам нужно событие щелчка - href не то же самое, как onclick событие. В идеале вы бы добавить общий класс ко всем этим ссылкам, а затем сделать 1 простой обработчик:

<a class="link" id="1"> 
    <div class="h1"> 
     <img src="https://placehold.it/256" /> 
    </div> 
</a> 

И в JQuery

$(".link").click(function(e) { 
    console.log(+this.id); 
}); 
+0

Спасибо. Я попробовал ваш метод, но он, похоже, не работает. Можете ли вы проверить, почему? http://codepen.io/anon/pen/bgpJzK – Alter

+0

@Alter - 'var id = obj.id;' - 'obj' не определен - это' this.id', как показывает ответ. Проверьте консоль - вы увидите ошибки. – tymeJV

0

Просто положить

это

в вашем блоге

<a onclick="transform(this)" href="http://www.google.com" id="1"> 

Посредством этого вы можете получить объект js элемента с щелчком, и из него вы можете легко получить значение любого используемого атрибута.

var transform = function(obj){ 
     var id = obj.id; 
     alert(parseInt(id)); 
} 

Chckout this fiddle

+0

Спасибо. Я пробовал ваш метод, но безуспешно. Теперь я отправлю свой код в mainthread. – Alter

+0

Позвольте мне внести некоторые изменения в мой ответ. в последний раз я спешил – gahse

Смежные вопросы