获得具有相同ID的两个元素

时间:2016-01-02 21:07:08

标签: javascript php jquery jquery-ui

我正在尝试获取两个<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>

<?

}

我尝试创建一个包含循环编号的数字变量,并尝试将其放在我的ids旁边,但是jQuery只选择了最后一个。

如何获取所有元素的内部值并附加它们?谢谢。

2 个答案:

答案 0 :(得分:14)

有效的HTML规定ID应该是唯一的。作为一种解决方法你可以做到

$('[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);
});

答案 1 :(得分:1)

ID因为某种原因而被调用 - 它应该是唯一的,因此它可以识别元素。您可能想要使用&#39; name&#39;相反,然后使用document.getElementsByName获取具有指定名称的所有元素 - 它返回一个数组。看看http://www.w3schools.com/jsref/met_doc_getelementsbyname.asp