我正在尝试获取数据属性值,它返回一些未定义的值。 我想,我做错了什么。 以下是我的代码,请看一下。
$(document).on("click",".adm tr .link",function(){
// alert("hii");
var company_id = $(this).data("id")
console.log($(this).data("id"));
// window.location.href = "userCompany.html"
})
<?php foreach ($car_listing as $car_listings) { ?>
<tr data-id="<?php echo $car_listings->company_id;?>">
<td class="link">
<img src="<?php echo image($car_listings->image);?>">
</td>
<td class="link"><?php echo $car_listings->name;?></td>
</tr>
<?php } ?>
有人有任何建议吗?
答案 0 :(得分:5)
data-id
元素在<tr>
元素上定义,但$(this)
引用<td class="link">
(因为您在{{1}上绑定了click
事件}})。
请改为尝试:
".adm tr .link"
请参阅parent
答案 1 :(得分:2)
答案 2 :(得分:1)
$(this)指向td,而不是具有data-id属性的tr。
<script type="text/javascript">
$(document).on("click",".adm tr .link",function(){
//alert("hii");
var company_id=$(this).parents('tr').data("id")
console.log($(this).data("id"));
// window.location.href = "userCompany.html"
})
</script>