2014-01-19 5 views
0

Я пытаюсь добавить текст в текстовое поле с событием focusout.jQuery заменить значение текстового поля на событие focusout

Мой JS Кодекс:

jQuery(".search-field input:text").focusout(function() { 
    var ckClass = jQuery(this).attr('class').split(' ')[1]; 

    if(ckClass == 'inp_pa_bedroom'){ 
     jQuery('.inp_pa_bedroom').val('Hi I am replace'); 
    }else if(ckClass == 'inp_pa_bathroom'){ 
     jQuery('.inp_pa_bedroom').val('Hi I am replace'); 
    } 
}); 

Я подаю некоторое условие для этой переменной: var ckClass, но значение замены и исчезают.

Я буду благодарен, если кто-нибудь меня поведет.

+0

plz crate http://jsfiddle.net/ –

+0

Не могли бы вы немного узнать о том, какой желаемый результат? Вы хотите добавить что-то в конец того, что уже было на входе? Кроме того, разве вы не должны использовать '$ (this) .val (...)' вместо использования селектора классов? – nnnnnn

+0

use hasClass(), чтобы проверить, имеет ли элемент определенный класс –

ответ

-1

попробуйте использовать hasClass() функцию. Используйте «.on» instout of focusout.

jQuery(".search-field input:text").on('focusout', function() {  
    if(jQuery(this).hasClass('inp_pa_bedroom')){ 
     jQuery(this).val('Hi I am replace'); 
    }else if(jQuery(this).hasClass('inp_pa_bathroom')){ 
     jQuery(this).val('Hi I am replace'); 
    } 
}); 
+0

Вы действительно должны привязать jQuery (this) к переменной и повторно использовать ее внутри обработчика. – SpoBo

+0

Как заменить '.focusout()' на '.on()' help? – nnnnnn

0
jQuery(function($){ // DOM ready and secure $ alias 

$('.search-field').find(".inp_pa_bedroom, .inp_pa_bathroom").focusout(function(){ 
    this.value = "Hi I am replace"; 
}); 

// Other DOM ready code here. 
// Use $ instead of jQuery if you care about your keyboard 

}); 

Почему сразу не предназначаться желаемых class элементов?
Перейдите в jQuery API docs, и вы найдете информацию о методе .find().

+0

, пожалуйста, дайте некоторое объяснение вашему коду, чтобы даже новичок мог его понять. – Strikers

+0

Редактирование @strikers. Теперь имеет смысл? –

Смежные вопросы