2015-03-11 4 views
0

У меня есть пользовательская форма для создания идеального UX, есть одно поле с кнопкой плюс добавить информацию о некоторых деталях, это поле имеет валидацию (избегайте того же значения поля), что мне нужно проверить DOM, если он равен или нет. Равенство, в котором я нуждаюсь, такое же DOM, а не как код.Как проверить два DOM равными?

HTML:

<form id="form"> 
    <select> ... </select><span class="btn"> + </span> 
</form> 

Javascript:

$("#form select").on('change', changeForm); 

function changeForm() { 
    var check = $(this); 
    $("#form select").each(function(){ // In first index is exactly equal of variable check 
     if (check == $(this)) { ... } // false 
     if (check === $(this)) { ... } // false 
     if (check.isEqualNode($(this)) { ... } // Uncaught TypeError: undefined is not a function 
     if (check.isSameNode($(this)) { ... } // Uncaught TypeError: undefined is not a function 
    } 
} 

ли код возврата верно? Или мой код не хороший?

ответ

1

Вы можете использовать .is()

if (check.is(this)) { ... } 
+0

Эта работа, спасибо! =) –

+0

obs: не было скобок в IF –

0

JQuery конструктор возвращает новый объект JQuery и 2 различные объекты не считаются равными.

Вы можете получить обернутый DOM элемента и сравнить его:

if (check.get(0) === this) 
Смежные вопросы