2016-01-02 5 views
-4

Я пытаюсь получить два значения элементов <a>, но jQuery только получает и добавляет первый.Получение двух элементов с одинаковыми идентификаторами

$bahisleriCek = mysql_query("SELECT * FROM bahis"); 
while ($bahisleriCekx = mysql_fetch_array($bahisleriCek)){ 


echo "<div id='tekbahis'"; 
echo "Bahis İsim: " . $bahisleriCekx['isim'] . "<br>"; 
echo "Evet Oranı: " . "<a onclick='evetOranGonder()' href='#' id='evetoran' >" . $bahisleriCekx['evetoran'] . "</a><br>"; 
echo "<hr>"; 
echo "</div>"; 
?> 

<script> 
function evetOranGonder(){ 

var evetoran=$("#evetoran").text(); 

$("#kupon").append(evetoran + '<br>'); 

} 

</script> 

<? 

} 

Я попытался создать числовую переменную, которая содержит номер цикла и пытался поставить его рядом с моим ид, но тогда Jquery только выбрал последний.

Как я могу получить внутренние значения всех элементов и добавить их? Спасибо.

+1

Наличие двух элементов с одинаковым идентификатором является недопустимым HTML (идентификатор представляет собой один объект/элемент), поэтому jquery/etc не поддерживает его. – JimL

+2

Элементы не должны иметь одинаковый идентификатор. – Script47

+0

Я пробовал с классом, но потом он выбрал все и добавил их. Я хочу добавить только тот, который пользователь выбирает. – Ece

ответ

10

В соответствии с HTML указывается, что идентификаторы должны быть уникальными. Работая вокруг, вы можете сделать

$('[id="value"]') 

Но в идеале вы должны исправить свою разметку. Если вы хотите «группировать» поля по идентификатору, используйте вместо него класс.

<a ... class="mylinks">...</a> 

Затем, чтобы выбрать их всех.

$('.mylinks') 

Похоже, вы пытаетесь выбрать элемент, в котором произошло событие. В этом случае в обработчике события ключевое слово «this» будет ссылаться на элемент, на который действует обработчик.

$(selector).on('click', function(){ 
    //the following line would take the element that was clicked and append it to something else. 
    $(someOtherElementSelector).append(this); 
}); 
+2

Я не думаю, что вы должны предоставить обходное решение – Popnoodles

+1

* shrug * Просто дайте им веревку. Если они решили сделать петлю ... – Taplar

+0

Я пробовал с классом, но потом он выбрал все и добавил их. Я хочу добавить только тот, который пользователь выбирает. – Ece

1

Идентификатор называется таким образом по причине - он должен быть уникальным, чтобы он мог идентифицировать элемент. Вместо этого вы можете использовать «имя», а затем получить все элементы с указанным именем с помощью document.getElementsByName - он возвращает массив. Посмотрите на http://www.w3schools.com/jsref/met_doc_getelementsbyname.asp

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