-4

在代码中,我使用的是 Jquery,它没有获取属性值,也没有提醒它,我也在 for 循环中,但它只给出第一个值而不是其他值。

我的代码:jQuery:-

$(document).ready(function () {
    $("#rid").on('click', function (e) {
        var v = $("#rid").attr('reel');
        alert("hello");
    });
});

和 HTML:-

        <a href="#" id="rid" reel="4">Click me</a>

请告诉我这是什么错误以及如何删除它。提前致谢。

4

3 回答 3

1

我在for循环中

我认为 for 循环你的意思是在生成 HTML 时......如果是,那意味着你有多个元素的相同 id(这就是原因,你总是在警报中获得第一个值)。因为您正在使用点击事件..使用this参考来获取您的属性..

尝试这个

$(document).ready(function () {
$("#rid").on('click', function (e) {
    var v = $(this).attr('reel');
    alert("hello");
});
});

我建议您查看HTML5 数据属性以存储自定义数据.. 并用于jquery.data()获取/设置。

例子

<a href="#" id="rid" data-reel="4">Click me</a>

js

$(document).ready(function () {
$("#rid").on('click', function (e) {
    var v = $(this).data('reel');
    alert(v);
});
});
于 2013-09-16T10:25:55.443 回答
0

尝试如下:

HTML

 <a href="#" id="rid" data-reel="4">Click me</a>

JS

$(document).ready(function () {
    $("#rid").on('click', function (e) {
        var v = $("#rid").data('reel');
        alert(v);
    });
});

演示

于 2013-09-16T10:29:54.993 回答
-1
$(document).ready(function () {
    $("#rid").on('click', function (e) {
        var v = $(this).attr('reel');
        alert("hello");
    });
});
于 2013-09-16T10:25:37.790 回答