我正在尝试获取两个<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只选择了最后一个。
如何获取所有元素的内部值并附加它们?谢谢。
答案 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