document.querySelectorAll("table[id^='Table']");
このコードは、IDが。のすべてのテーブルを選択しますTable。しかし、idがTable2 OR Table7(または他の番号)のテーブルを選択したいと思います。正規表現でこれを行う方法は?
編集:私の場合、jQueryは適用できません。
document.querySelectorAll("table[id^='Table']");
このコードは、IDが。のすべてのテーブルを選択しますTable。しかし、idがTable2 OR Table7(または他の番号)のテーブルを選択したいと思います。正規表現でこれを行う方法は?
編集:私の場合、jQueryは適用できません。
function getTables(tableNumbers) { // Usage: getTables([2, 7]) will return the tables with the ID 'Table2' and 'Table7'. (You can add more numbers; [2,7,3,6])
    var allTables = document.querySelectorAll("table[id^='Table']");
    var tablesWeWant = [];
    for (var i = 0; i < allTables.length; i++) {
        if (allTables[i].id.match(/Table[0-9]/)) {
            tablesWeWant.push(allTables[i]);
        }
    }
    for (var i = 0; i < tablesWeWant.length; i++) {
        if (!tableNumbers.contains(tablesWeWant[i].id.substr(id.length - 1))) {
            tableNumbers.splice(i, 1);
        }
    }
    return tablesWeWant;
}
これにより、正規表現に一致/Table[0-9]/し、変数に含まれる数字で終わるIDを持つすべてのテーブルが返されますtableNumbders。
免責事項:私は正規表現の専門家ではありません。
編集:
数回編集した後、上記のコードが少し長くなりすぎたので、次のように書き直しました:
function getTables(tableNumbers) {
    var tablesWeWant = [];
    for (var i = 0; i < tableNumbers.length; i++) {
        tablesWeWant.push(document.querySelector("#Table" + tableNumbers[i]));
    }
    return tablesWeWant;
}
2番目のアプローチは機能します:http://jsfiddle.net/qQ7VT/1/