document.querySelectorAll("table[id^='Table']");
이 코드는 Table
의 ID를 가진 모든 테이블을 선택합니다. 하지만 ID가 Table2 OR Table7
(또는 다른 숫자) 인 표를 선택하고 싶습니다. 정규식을 사용하여 이것을 수행하는 방법?자바 스크립트에서 여러 개의 정규식 일치
편집 : 내 경우에는 jQuery를 사용할 수 없습니다.
document.querySelectorAll("table[id^='Table']");
이 코드는 Table
의 ID를 가진 모든 테이블을 선택합니다. 하지만 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;
}
이것은 ID가 일치 정규식 /Table[0-9]/
가변 tableNumbders
포함 디지트로 끝나는 모든 테이블을 반환한다.
면책 조항 : 저는 정규 표현식 전문가가 아닙니다.
편집 :
은, 위의 코드를 조금 너무 오래되었습니다 몇 번을 편집 한 후에 그래서 나는 이런 식으로 재 작성 :
function getTables(tableNumbers) {
var tablesWeWant = [];
for (var i = 0; i < tableNumbers.length; i++) {
tablesWeWant.push(document.querySelector("#Table" + tableNumbers[i]));
}
return tablesWeWant;
}
두 번째 방법은 작동합니다 http://jsfiddle.net/qQ7VT/1/
JQuery와는 아니다 내 사건에 적용 – Adige72
질문에있는 코드가이 작업을 수행해야합니다. 왜 그걸 사용하지 않니? – 11684
또한 숫자 매치를 추가하고 regex – Adige72