очистить значение в поле ввода с помощью jQuery

0

Привет, у меня есть несколько входов для телефонных номеров, они используют один и тот же класс и тот же метод show/hide techinque. Я хочу, чтобы очистить содержимое номера телефона в поле ввода, то есть с именем класса input_tel.

Однако кажется, что все входы, которые, как я предполагаю, ясны, потому что я использую следующую строку; input:text, когда я помещаю в класс, он просто не работает.

Мой JS и некоторые из моих html ниже или видят jsFiddle:

$(".contact_numbers").on('click', '.clearnumber', function () {
  $(this).siblings('input:text').val('');
});

<div class="telephonetwo contact_numbers">
   <input type="text" class="smallinput contactpagelabel" name="faxname" size="10" value="Fax">
   <input type="checkbox" class="contact_no" name="showfax" value="Y">      
   <input type="text" name="fax" size="30" value="016128 13456" class="input_tel">
   <a href="#" class="remove">Hide</a> <a href="#" class="clearnumber">Clear #</a>
 </div>

Если вы просматриваете мой JSfiddle, нажмите на раскрывающиеся дополнительные номера для кнопки очистки.

Обновить

Я хочу иметь возможность очистить ближайший input_tel, а не все из них, так как их несколько чисел.

заранее спасибо

Теги:

4 ответа

2
Лучший ответ

заменить:

$(this).siblings('input:text').val('');  

с

$(this).siblings('input:text').closest('.input_tel').val('');  

JSFIDDLE DEMO

  • 0
    который очищает всю строку, я хочу, чтобы очистить ближайший класс input_tel
  • 0
    не волнуйтесь, изменил ваш тип на класс и заменил имя
Показать ещё 3 комментария
2

Как насчет таргетинга на класс input_tel?

$(".contact_numbers").on('click', '.clearnumber', function () {
   $(this).parent().parent().find('input.input_tel').val('');
});

Предполагая, что никакие другие поля ввода не имеют этого класса input_tel.

  • 0
    если я сделаю это, то все это очищает
  • 0
    Что если вы повысите уровень на два уровня с parent() а затем нацелитесь на класс, как мое новое редактирование?
1

Это должно сделать это...

$(".contact_numbers").on('click', function () {
  $(".input_tel").val('');
});
0

Безопасный способ очистки полей ввода с помощью jquery

$.fn.noText = function() {/*use the jquery prototype technology to make a chainable clear field method*/
    if(this.is('input')){ /*check to c if you the element type is an input*/
        this.val('');/*clear the input field*/
    }return this;/*means it is chainable*/
};
$('input').noText();

Ещё вопросы

Сообщество Overcoder
Наверх
Меню