Tengo dos variables x y y. ¿Puedo seleccionar el elemento que tiene un id de x así como un class de y con jQuery?

0
drake035 23 ene. 2015 a las 01:19

2 respuestas

La mejor respuesta

El selector:

$('#'+x+'.'+y)

Seleccionará una identificación xy una clase y, pero como dijo danielwinter, no hay realmente un punto a menos que esté tratando de ver si a un elemento con una cierta identificación se le ha asignado una clase, en cuyo caso es mejor usar:

if($('#'+x).hasClass(y)){
    //whatever here
}

Quien venga detrás de ti comprenderá tu intención más que:

if($('#'+x+'.'+y).length > 0){
    //whatever here
}
0
Michael Humelsine 22 ene. 2015 a las 22:47

Aquí hay un ejemplo HTML

<input type='button' id='myId' class='myClass' value='Hello World'>

JS las siguientes 4 funciones son las mismas

$('input.myClass#myId').on('click', function(){
    // do the same action
});
$('input#myId.myClass').on('click', function(){
        // do the same action
});
$('.myClass#myId').on('click', function(){
        // do the same action
});
$('#myId.myClass').on('click', function(){
        // do the same action
});
0
Lumi Lu 23 ene. 2015 a las 01:04