E 'semplice:
$('[id^=tabId][id$=componentId]').each(function(){
var id = $(this).attr('id'); // tabId:someDynamicId:rowId:componentId
var list = id.split(':');
console.log(list[0]); // tabId
console.log(list[1]); // someDynamicId
console.log(list[2]); // rowId
console.log(list[3]); // componentId
})
Wildcards in jQuery selectors
Ma sto raccomandando usare gli strumenti giusti per questo lavoro. Gli ID sono utili per trovare elementi specifici, ma nel tuo caso è meglio usare una o due classi e attributi di dati. Per esempio:
<div class="tabs" data-component-id="x" data-tab-id="y">
poi trovare tutti gli elementi e utilizzare $ $ (this) .data ('componente-id ') e $ (this) .data (' scheda-id ') (' schede.')
$('.tabs').each(function(){
var component_id = $(this).data('component-id');
var tab_id = $(this).data('tab-id');
});
Aggiornamento:
C'è esempio di utilizzo di questo come la funzione:
function(tabId,componentId) {
$('[id^='+tabId+'][id$='+componentId+']').each(function(){
var id = $(this).attr('id'); // tabId:someDynamicId:rowId:componentId
var list = id.split(':');
console.log(list[0]); // tabId
console.log(list[1]); // someDynamicId
console.log(list[2]); // rowId
console.log(list[3]); // componentId
})
}
fonte
2012-03-30 05:31:57
+1 che è stato fantastico! – tusar
Grazie amico .. Ha funzionato :) :) –