gpt4 book ai didi

jquery - 使用 jQuery 读取 "data-id"属性

转载 作者:行者123 更新时间:2023-12-01 07:19:01 25 4
gpt4 key购买 nike

我正在尝试使用名为 jRating 的好插件,据说当我点击星星时它会执行某种 AJAX 调用。它使用正确的速率值来完成此操作,但是 data-id 属性(将作为 AJAX 调用文件中 MySQL 查询的输入)未定义 (NaN)。这是代码:

演示 HTML:

<div class="exemple"> 
<!-- in this exemple, 12 is the average and 1 is the id of the line to update in DB -->
<div class="basic" data-average="12" data-id="1"></div>
</div>

<强> jRating.jquery.js :

//Line 60:
//idBox = parseInt($(this).attr('data-id')), // old version, idBox=Nan
idBox = parseInt($(this).data("id")); // my version, still idBox=Nan

编辑:php 主页面标题中的 jquery 调用:

<script type="text/javascript">
$(document).ready(function(){
$(".exemple").jRating({
length:10,
decimalLength:0,
onSuccess : function(){
alert('Success : your rate has been saved :)');
},
onError : function(){
alert('Error : please retry');
}
});
});
</script>

我似乎无法弄清楚出了什么问题。请帮我找到它。谢谢!

解决方案:

正如@ZachL 所认识到的,jRating.jquery.js 中的 $(this) 指的是 div.exemple,而 data-id 则位于 div.basic 中。

因此将 $(this).data("id") 更改为 $(this).find('.basic').data("id")工作了。

最佳答案

据我所知,该脚本正在寻找<div class="exemple">上的数据属性。 ,但它只存在于<div class="basic">上.

您可以尝试idBox = parseInt($(this).find('.basic').data("id"));

关于jquery - 使用 jQuery 读取 "data-id"属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15822820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com