Сбросить текстовое поле при нажатии мыши / вводе - автозаполнение интерфейса jQuery - PullRequest
1 голос
/ 23 октября 2019

Простая JS-скрипта, содержащая мой код в рабочем состоянии

У меня есть поле JQuery UI Autocomplete с прикрепленной кнопкой раскрывающегося списка. Однако он работает бесполезно - его раздражает необходимость вручную удалять слова в поле для поиска.

Я не уверен, есть ли в jQuery UI функция, если только яя хотел бы знать.

Я пытался использовать функции onClick с JS, однако, так как мое поле не совсем "поле формы", я тут как-то потерялся.

Моя цельэто: сбросить текстовое поле, когда пользователь нажимает на него. В нем есть предварительно написанный текст «Пожалуйста, выберите (или введите)»

мой файл cshtml выглядит следующим образом cshtml

И это выглядит в браузере browser

Код для изображения 1:

<select asp-for="Dinosaur" class="combobox" id="dinoType" asp-items="Html.GetEnumSelectList<Dinosaurs>()">
        <option selected="selected" type="text" onclick="resetText()" value="0">Please select (Or Type)</option>
    </select>
    <span asp-validation-for="Dinosaur" class="text-dark" />

AsВы можете видеть, что в нем есть текст, который я должен нажать CTRL + A, УДАЛИТЬ, прежде чем я смогу искать в своем поле.

Функция, чтобы очистить этот текст, когда пользователь нажимает, он ослабит давление.

Может быть, я просто глуп, чтобы увидеть простое решение, я просто чувствую, что попробовал кое-что из того, что я бы сказаливе бы сработало. (Как onclick = "ResetText ()" с прикрепленным к нему кодом JS)

Когда я нажимаю drop down , это - это то, что показывает.

С наилучшими пожеланиями,

Ответы [ 2 ]

0 голосов
/ 23 октября 2019

используйте onchange вместо onclick, и это действие должно быть в теге select. не по вариантам. Попробуйте этот пример.

$('select').on('change', function() {
  if (this.value === 'disabled') {
    this.value = '';
  }
  console.log(this.value);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select asp-for="Dinosaur" class="combobox" id="dinoType" asp-items="Html.GetEnumSelectList<Dinosaurs>()">
        <option selected="selected" type="text" value="disabled">Please select (Or Type)</option>
        <option type="text" value="One">One</option>
        <option type="text" value="two">two</option>
    </select>
    <span asp-validation-for="Dinosaur" class="text-dark" />
0 голосов
/ 23 октября 2019

Вы не хотите подключать прослушиватель onclick к вашему элементу option, вам нужен прослушиватель событий onchange для вашего элемента select. onclick не поддерживается для элементов option.

...