我正在使用PHP foreach循环来使用创建评级输入:

<input id="input<?php echo $i ?>" data-id="<?php echo $i ?>" class="rating-loading">


问题是id="input"对于jQuery函数应该是唯一的,并且我不知道如何将此数据id传递给jQuery,我试图使它像这样:

$(document).on('ready', function(){
    $('#input'+id).rating({
        //my function
    });
});


但是,它不起作用。如果在顶部我创建了id="input1",并且在脚本中添加了var id = 1;,则它仅适用于循环中的第一个输入,但是我不确定如何将该data-id传递给jQuery。我什至尝试:

$(document).on('ready', function(){
    $(this).attr('data-id').rating({
        //my function
    });
});


但是,这也不起作用。请帮我。

最佳答案

不要使用增量id属性;他们很快变得难以维持。请改用通用类。您的输入已经有一个.rating-loading类,因此我们可以使用它:

<input data-id="<?php echo $i ?>" class="rating-loading">


$('.rating-loading').rating({
    //my function
});

关于javascript - 将数据ID从php循环传递到jquery,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40376762/

10-11 01:48
查看更多