2015-06-12 2 views
-1

У меня есть страница с несколькими ссылками, и я хочу выполнить функцию JQuery при нажатии ссылки. Я хочу отправить значение со ссылкой. К сожалению, моя функция JQuery не выполняется.Jquery call from php function

Ниже приведен фрагмент кода из файла php.

foreach ($ties as $tie) { 
     echo "<a href='#' id ='species'><em>{$tie}</em></a></br>"; 
    } 

И в моем методе JQuery выполнения, фрагмент кода выглядит следующим образом:

$("#species").click(function(){ 
     alert("Hi"); 
    } 

Любая помощь будет принята с благодарностью.

+2

вы не можете использовать один и тот же идентификатор для более линий, перейти к классу (даже в слушателе onlick функции) – Goikiu

+0

же идентификатор в цикле Еогеаспа ??? –

+1

@ Вики, это неправильно, если вы установите динамический идентификатор, вам нужно будет добавить слушателя для каждого идентификатора. Вместо того, чтобы работать с классом, чтобы не делать этого – Goikiu

ответ

0

Здравствуйте, как уже упоминалось ранее, вы не должны использовать id в цикле, поскольку идентификаторы должны быть уникальными в контексте всей страницы. Вместо этого вы должны использовать классы.

foreach ($ties as $tie) { 
    echo "<a class="species" href="somepage.php?tie=$tie"><em>{$tie}</em></a></br>"; 
} 

$(".species").click(function() { 
    // This is the clicked anchor. 
    console.log(this.href); 
}); 

Вы также можете использовать атрибуты данных html5 для хранения, например, идентификатора tie. Для дальнейшего использования.

foreach ($ties as $tie) { 
    echo "<a class="species" href="#" data-tie="$tieID"><em>{$tie}</em></a></br>"; 
} 

$(".species").click(function() { 
    // This is the clicked anchor. 
    console.log($(this).data("tie")); 
});