Encontrar control en javascript o jquery
-
12-11-2019 - |
Pregunta
Tengo una tabla html dinámica generada con JavaScript.La tabla contiene diferentes controles, como el cuadro de texto, la caja desplegable que tiene atributos personalizados. ¿Cómo puedo hacer un bucle a través de todos los controles presentes dentro de esta tabla y encontrar el control cuyo atributo personalizado coincide con algún valor?
Solución
Esto le dará todos los elementos de formulario dentro de su mesa ( selector de :input
):
var $formElements = $('#tableid').find(':input');
Puede filtrar con una selector de atributos :
//will select every form element having a data-custom attribute set to 5
var $formElements = $('#tableid').find(':input[data-custom="5"]');
Por favor, consulte el jsfiddle demo .Para mis ejemplos utilicé atributos de datos html5 , pero el código funcionará conCualquier atributo que necesite.
O puede usar el filter()
Method para escribir una función que filtra sus elementos:
var $formElements = $('#tableid').find(':input').filter(function () {
return $(this).attr('data-custom') == '5';
});
Otros consejos
Demo: http://jsfiddle.net/dsqzr/1/
function getControl(_value){
$("#panel :input").each(function(){
if($(this).attr("custom") == _value){
return $(this);
}
})
}
var selectedCrl = getControl(1);
Puede usar El atributo contiene selector .
Verifique el ejemplo, probablemente esté muy cerca de lo que necesita, que es encontrar elementos input
y select
con ciertos valores de atributo
Dales un código de generación de clase y:
$('.control[attribute=value]')
Revisa Selectores API Para más información sobre los selectores de atributos.