validacion - validar formulario javascript onclick




Prueba si dos elementos son iguales (5)

9 años después, sin jQuery

Si dos elementos son el mismo, dos elementos deben tener el mismo puntero. Así,

document.body === document.body // true
document.querySelector('div') === document.querySelector('div') // true
document.createElement('div') === document.createElement('div') // false

Sospecho que esto funcionará al principio:

if ($('#element') == $('#element')) alert('hello');

Pero no es así ¿Cómo se prueba si los elementos son iguales?


A partir de jquery 1.6 ahora puede hacer simplemente:

$element1.is($element2)

Como sedoso o dijo Santi, una ID o clase única sería la forma más fácil de probar. La razón por la que tus declaraciones if no funcionan como esperarías es porque está comparando 2 objetos y viendo si son el mismo objeto en la memoria.

Como siempre es un objeto nuevo creado por $ (esto), nunca pueden igualarse entre sí. Es por eso que tienes que probar en una propiedad del objeto. Podrías salirte con la única identificación / clase única si se garantizara que cada elemento de openActivity tuviera contenido diferente contra el que podrías poner a prueba.


Esto debería funcionar:

if ($(this)[0] === $(this)[0]) alert('hello');

así que si esto

if (openActivity[0] == $(this)[0]) alert('hello');

Yo usaría addClass () para marcar el abierto y puedes verificarlo fácilmente.







jquery