JQuery Автозаполнение события onChange - PullRequest
0 голосов
/ 18 марта 2012

У меня есть список меню на моей странице php.В этом списке меню у меня есть событие onChange, которое вы можете увидеть ниже.

<select name="company" onChange="getproduct(this)">

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

<input type="text" name="company" id="company"  onkeyup="getproduct(this)"/>

Ответы [ 2 ]

4 голосов
/ 18 марта 2012

Вообще говоря, использование атрибутов html для событий javascript является плохой практикой.Так как вы все равно используете jQuery, вы должны сделать что-то подобное во внешнем скрипте:

$('#company').on('change keyup input', function() { getproduct(this); });

Сейчас я разбью его.

$('#company')выбирает элемент с идентификатором «компания».Это позволяет вам работать с этим объектом с помощью javascript, изменив его или подключив прослушиватели событий.

.on(...) присоединяет прослушиватели событий к выбранным объектам.Его можно использовать несколькими различными способами, но самым основным способом (который мы здесь используем), он принимает два параметра, первый - это список событий, разделенных пробелом, и второй - функция обратного вызова.выполняется, когда эти события происходят на выбранном элементе.

change - это событие, которое запускается, когда элемент ввода изменил свое значение и затем потерял фокус.Это может быть полезным событием, если пользователь не изменил ввод, набрав (возможно, вставив через контекстное меню).

keyup - это событие, которое вызываетсякогда клавиша нажата, а затем отпущена.См. Также keydown и keypress.

input - это классное новое событие HTML5, предназначенное для прослушивания пользовательского ввода элемента.Это важно использовать, потому что он был разработан специально для того, что вы пытаетесь достичь.(Примечательно, что событие ввода запускается при нажатии кнопок со стрелками вращения на числовых типах ввода.) Вы по-прежнему хотите использовать другие события в качестве запасных вариантов в случае, если событие ввода не поддерживается в браузере пользователя.

1 голос
/ 18 марта 2012
$('#company').change(function(){
  getproduct(this);
});

вот ссылка на документацию jquery для события .change http://api.jquery.com/change/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...