1

我有一个 html.twig 文件

{% set num= 1%}
{% for idea in ideas %}

    <div class="add">
        <a href="#"> Comentar </a>|<a href="#" rel="like{{num}}"> Tomado </a>|<a href="#">Valorar</a>
    </div>
</div>
{% set num= num +1 %}
{% endfor %}

所以取决于我喜欢的想法的数量,像这样

<a rel="like1" href="#"> Tomado </a>
<a rel="like2" href="#"> Tomado </a>
<a rel="like3" href="#"> Tomado </a>

如果我想在 jquery 中单击,但是我如何指示链接数,num 变量的值

   $("a[rel='like']").click(function(){
            alert($("a[rel='like']").text());
    });

任何想法!

4

3 回答 3

2

为此,您可以试用这个 jquery 选择器jQuery('[attribute^="value"]')

像这样编码

 $("a[rel^='like']").click(function(){
            alert($(this).attr("rel"));
    });
于 2012-10-25T12:32:22.677 回答
2

我将假设您想要该rel属性的值。如果这是真的,你应该试试这个:http: //jsfiddle.net/kakashi/Uqqpr/

我的解决方案使用attr方法来获取rel属性的值。

更新 看起来你想要包含在 rel 属性中的数字,即当它是“like1”时你想要“1”,当它是“like2”时想要“2”,等等。如果是这样,这个解决方案将这样做:

http://jsfiddle.net/kakashi/Uqqpr/1/

*更新 2 - 考虑多个数字“喜欢”*

http://jsfiddle.net/kakashi/Uqqpr/2/ 这个版本使用正则表达式来捕捉末尾的数字。

于 2012-10-25T12:35:36.733 回答
1

您可以startsWith像这样使用选择器:

$("a[rel^='like']").click(function(){
    var theNumber = this.rel.replace(/[^0-9]/g, ''); 
});

很有可能,您甚至不需要从 rel 属性中解析出数字(另外,您确实应该为此使用数据属性):

$("a[rel^='like']").click(function(){
    var theNumber = $(this).index(); 
});

data使用属性的示例:

<a href="#" data-num="{{num}}">

$("a[rel^='like']").click(function(){
    var theNumber = $(this).data("num"); 
});    

演示。

于 2012-10-25T12:31:06.397 回答