В приведенной ниже скрипте есть пример кода, который мне нужен для устранения неполадок. Я немного упростил его из исходного кода (не писал) для демонстрационных целей в скрипке.Невозможно получить целевое свойство события с именованной функцией
$(document).ready(function(){
$("ul").children().each(function(i){
$(this).click(function(){
var indexItem = i;
if(indexItem == 0){
displayId();
}
if(indexItem == 1){
displayNode();
}
if(indexItem == 2){
displayNodevalue();
}
});
});
})
function displayId(event){
// below returns undefined not what I want
// var $listID = jQuery(this).attr("id");
var $listID = event.target.id;
alert($listID);
}
function displayNode(event){
var listNodename = event.target.nodeName;
alert(listNodename);
}
function displayNodevalue(event){
var listValue = event.target.nodeValue;
alert(listValue);
}
Как мне получить свойства event.target для этих элементов? Консоль отображает:
Uncaught TypeError: Cannot read property 'target' of undefined
Я гугл различных возможных решения ниже. Они хорошие, но я не нахожу ответа.
How to pass the event object to a named function
Getting the ID of the element that fired an event
https://api.jquery.com/event.target/
Если я пропустил ответ в этих потоках, пожалуйста, дайте мне знать. Кажется, на этот вопрос нужно ответить, но у меня проблемы с его поиском. Если нет, я был бы признателен за некоторую помощь, которая сообщила бы мне, что не так с этим кодом и как получить цель мероприятия. Благодарю.
Пожалуйста, не обогнуть предупреждающее сообщение. __Ссылки на jsfiddle.net должны сопровождаться кодом .__ – Satpal
@Satpal, я не заметил предупреждения. У меня нет проблем с отправкой кода, в прошлом мне сообщалось, когда вы отправляли сообщения для использования скриптов или кодовых страниц и т. Д., Чтобы отображать код, так как было бы легче отлаживать. Вот почему я поставил скрипку в первую очередь. – Chris22