Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: jquery + плагин + значение селекта
 
 автор: neadekvat   (10.07.2010 в 14:47)   письмо автору
 
 

Доброго всем времени суток.

Решил использовать для поиска вот этот плагин: ссылка
Работает, однако есть необходимость передавать дополнительные параметры, причем значения надо брать из соседнего селекта:
<select id="discipline">
<option value="1">намба рас</option>
<option value="2">намба два</option>
</select>

Хватило на то, чтобы написать это:
var discId = document.getElementById('discipline').value;

$("input#example").autocomplete("autocomplete-ajax.php", {
parameters:{'discipline': discId},
before: function () {var discId = document.getElementById('discipline').value}
});


Это, конечно же, не работает. Подставляется в discId первое значение, которое есть при открытии страницы, далее discId изменятся не хочет, сколько бы я селект руками не менял.
Возможно, я не так понял документацию, конкретно - слова о вызове функции до запроса.
Кто-нибудь может ответить, как же таки перед отправкой заменить значение discId на значение выбранного селекта?

  Ответить  
 
 автор: AlexSol   (10.07.2010 в 14:56)   письмо автору
 
   для: neadekvat   (10.07.2010 в 14:47)
 

before: function () {var discId = document.getElementById('discipline').value}

-->
before: function () {discId = document.getElementById('discipline').value}


var -Лишнее, создаете локальную переменную внутри функции, не переопределяете глобальную

  Ответить  
 
 автор: neadekvat   (10.07.2010 в 15:07)   письмо автору
 
   для: AlexSol   (10.07.2010 в 14:56)
 

К сожалению, не сработало

  Ответить  
 
 автор: neadekvat   (10.07.2010 в 15:25)   письмо автору
 
   для: neadekvat   (10.07.2010 в 14:47)
 

В общем, не смог сделать стандартными возможностями.
Инициализацию скрипта из
var discId = document.getElementById('discipline').value; 

$("input#example").autocomplete("autocomplete-ajax.php", { 
parameters:{'discipline': discId}, 
before: function () {var discId = document.getElementById('discipline').value} 
});


Превратил в
$("input#example").autocomplete("autocomplete-ajax.php");

А в коде самой функции ( jquery.autocomplete ), в строке 67 дописал
settings.parameters.discipline = document.getElementById('discipline').value;

Работает.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования