2015-08-09 3 views
0

У меня возникла странная проблема. У меня есть A HREF тегаВызов event.target.id для тега href с жирным шрифтом между

<a class="link" data-bind="click: templateToUse" href="#" id="InputType"><b>Title:</b> Content</a> 

Мои JS

$('.link').click(function(event){ 
    if(event.target.id!='') 
    alert(event.target.id); 
    else 
     alert('undefined'); 
}); 

скрипку: http://jsfiddle.net/sourabhtewari/ork50uf7/

Теперь, если я нажму на смелой 'Title', он дает мне пустую цель Id. Я предполагаю, что, поскольку весь текст находится в теге href, он должен отправить идентификатор целевого события, но если у нас есть отформатированный текст в ссылке, форматированный текст не отправит правильную цель события.

Теперь я уверен, что есть легкое решение для этого. Возможно, я использую CSS без проблем. Я попытался использовать «display: block», но это тоже не поможет.

ответ

2

Вам необходимо использовать currentTarget. См. MDN для обзора различных «целей» в объектах событий.

Решение:

if(event.currentTarget.id!='') 
    alert(event.currentTarget.id); 

Работа fiddle.

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