有没有办法将两个HTML ID链接到一个javascript函数?

时间:2014-12-02 01:53:56

标签: javascript jquery html

我有两个表需要具有不同的ID,否则它们将无法工作。我使用第三方数据表代码,使用该ID来区分浏览器中的不同表。

<table id="promo" class="display">
<table id="official" class="display">

但我需要他们两个链接到相同的脚本功能。正如你在下面看到的,我有#promo和#official的一个,但他们都使用完全相同的代码:

$(document).ready(function() {
    $('#promo').DataTable( {
        // does a TON of stuff here
    } );

    $('#official').DataTable( {
        // does a TON of stuff here
    } );

有没有办法让两个表都链接到脚本中的相同代码?

3 个答案:

答案 0 :(得分:6)

  

有没有办法让两个表都链接到脚本中的相同代码?

是:

$('#promo, #official').DataTable( {
    // does a TON of stuff here
});

这使用CSS group selector,但您可以使用与这两个元素匹配的任何其他选择器。例如,根据您的问题,.display(a class selector)也可以(如果它不匹配您未显示的其他元素):

$('.display').DataTable( {
    // does a TON of stuff here
});

答案 1 :(得分:4)

$('.display').each(function(){
    $(this).DataTable({
        // does a TON of stuff here
    });
});

这样您就不必手动添加每个id。只需将.display添加到元素中即可。

答案 2 :(得分:0)

可替换地:

var $DTs = $(".someSemanticClassForAllIntendedTables"); //for easy reference elsewhere
$DTs.DataTable({ //options });