首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有办法使两个HTML ID的链接到一个javascript函数?

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

Stack Overflow用户
提问于 2014-12-02 01:53:55
回答 3查看 74关注 0票数 0

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

代码语言:javascript
运行
复制
<table id="promo" class="display">
<table id="official" class="display">

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

代码语言:javascript
运行
复制
$(document).ready(function() {
    $('#promo').DataTable( {
        // does a TON of stuff here
    } );

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

是否有办法使两个表链接到脚本中的相同代码?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-12-02 01:55:55

是否有办法使两个表链接到脚本中的相同代码?

是:

代码语言:javascript
运行
复制
$('#promo, #official').DataTable( {
    // does a TON of stuff here
});

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

代码语言:javascript
运行
复制
$('.display').DataTable( {
    // does a TON of stuff here
});
票数 6
EN

Stack Overflow用户

发布于 2014-12-02 01:55:56

代码语言:javascript
运行
复制
$('.display').each(function(){
    $(this).DataTable({
        // does a TON of stuff here
    });
});

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

票数 4
EN

Stack Overflow用户

发布于 2014-12-02 02:01:39

另一种选择是:

代码语言:javascript
运行
复制
var $DTs = $(".someSemanticClassForAllIntendedTables"); //for easy reference elsewhere
$DTs.DataTable({ //options });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27240623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档