Trova il controllo in JavaScript o JQuery
-
12-11-2019 - |
Domanda
Ho una tabella HTML dinamica generata utilizzando JavaScript.La tabella contiene comandi diffrent come una casella di testo, casella a discesa che ha attributi personalizzati.Come posso loop attraverso tutti i controlli presenti all'interno di questa tabella e trovare il controllo il cui attributo personalizzato corrisponde ad un valore?
Soluzione
Questo ti darà tutti gli elementi del modulo all'interno del tuo tavolo ( :input
Selector ): .
var $formElements = $('#tableid').find(':input');
.
È possibile filtrare con un Selettore Attributo :
//will select every form element having a data-custom attribute set to 5
var $formElements = $('#tableid').find(':input[data-custom="5"]');
.
Si prega di consultare il jsfiddle demo .Per i miei esempi ho usato DATA-Attributi HTML5 , ma il codice funzionerà conQualsiasi attributo di cui hai bisogno.
o puoi usare il metodo filter()
per scrivere una funzione che filtra i tuoi elementi: jsfiddle demo con filtro ()
Altri suggerimenti
Demo: http://jsfiddle.net/dsqzr/1/
function getControl(_value){
$("#panel :input").each(function(){
if($(this).attr("custom") == _value){
return $(this);
}
})
}
var selectedCrl = getControl(1);
. Puoi usare Attributo contiene selettore .
Controllare l'esempio è probabilmente molto vicino a ciò di cui hai bisogno che è trovare input
& select
Elements con determinati valori di attributo
Dare loro un .control
di classe e:
$('.control[attribute=value]')
.
Check Seleclors API per ulteriori informazioni sui selettori di attributo.