очистка выбора с помощью jquery

#jquery

#jquery

Вопрос:

Возможно ли очистить содержимое html-объекта select с помощью jQuery? У меня есть функция, которая получает список для заполнения выбора и добавляет его к выбору, поэтому мне нужен какой-то способ очистки предыдущих данных перед добавлением.

Ответ №1:

использовать .empty()

  $('select').empty().append('whatever');
  

вы также можете использовать .html() , но обратите внимание

Когда .html() используется для установки содержимого элемента, любое содержимое, которое было в этом элементе, полностью заменяется новым содержимым. Рассмотрим следующий HTML:

альтернатива: — Если вы хотите, чтобы удалялись только элементы опций, используйте .remove()

 $('select option').remove();
  

Комментарии:

1. Таким образом, вы можете очистить старый список и добавить новый список в одной строке кода? Отлично!

2. .html() не следует использовать, поскольку он не удаляет какие-либо данные или элементы bount. Вместо этого используйте два других (.empty() или .remove()), которые удаляют все данные и связанные элементы.

Ответ №2:

Если вас не волнуют какие-либо дочерние элементы, например, optgroup , вы можете использовать empty()

 $('select').empty();
  

В противном случае, если вы хотите удалить только option элементы, используйте remove() .

 $('select option').remove();
  

Ответ №3:

 $('option', '#theSelect').remove();
  

Ответ №4:

Предположим, что список, подобный приведенному ниже, — и предположим, что некоторые из параметров были выбраны… (это множественный выбор, но это также будет работать с одним выбором.

 <select multiple='multiple' id='selectListName'> 
    <option>1</option> 
    <option>2</option> 
    <option>3</option> 
    <option>4</option>
</select>
  

В некоторой функции, вызываемой на основе некоторого события, следующий код очистит все выбранные параметры.

$(«#selectListName»).prop(‘SelectedIndex’, -1);

Ответ №5:

Вот небольшой плагин jQuery, который (среди прочего) может очищать выпадающий список.

Просто напишите:

 $('your-select-element').selectUtils('setEmpty');
  

Ответ №6:

Для большинства моих опций выбора я начинаю с опции, которая просто говорит «Пожалуйста, выберите» или что-то подобное, и эта опция всегда отключена. Затем всякий раз, когда вы захотите очистить свой выбор / опцию, вы можете просто сделать что-то вроде этого.

Пример

 <select id="mySelectOption">
   <option value="" selected disabled>Please select</option>
</select>
  

Ответ

 $('#mySelectOption').val('Please Select');
  

Ответ №7:

У вас могут быть значения параметра выбора, такие как «Выбрать параметр». Если вы хотите сохранить это значение и очистить остальные значения, вы можете сначала удалить все значения и append «Выбрать опцию»

 <select multiple='multiple' id='selectName'> 
    <option selected disabled>Choose Option</option>
    <option>1</option> 
    <option>2</option> 
    <option>3</option>    
</select>
  

Jquery

 $('#selectName option').remove(); // clear all values 
$('#selectName ').append('<option selected disabled>Choose Option</option>'); //append what you want to keep