Я пытаюсь создать интерфейс администратора, в котором можно выбирать модели разных типов, а затем сохранять их как новый объект.
Event.observe($('modelSearch'),'focus',function(){
new Ajax.Autocompleter( 'modelSearch', 'autoCompleteModel', 'xxx',
{
paramName: "q",
indicator: "makeWaitPic",
parameters: "previusId=" + $( 'previusModelId' ).getValue(),
afterUpdateElement: function( text, li )
{
if( li.id != '' )
$( 'modelId' ).value = <AjaxReturnValue>;
else
$( 'modelSearch' ).value = '';
}
} );
});
Проблема, с которой я столкнулся, заключается в том, что когда у меня естьавтозаполнение, которое зависит от другого автозаполнения, я получаю проблему.Первое автоматическое заполнение позволяет выбрать модель и сохранить выбранный идентификатор модели в скрытом поле ввода.Это значение используется вторым автоматическим завершением, чтобы он знал, в какую таблицу БД он должен смотреть.
задача 1 : Если я создаю оба автоматических завершения в dom: load, они будут читатьвходное значение до того, как оно было установлено.И поэтому второе автоматическое завершение не будет работать.
задача 2 : если я создаю автоматическое завершение при наблюдении: focus они будут каждый раз читать значение заново, но затем также будут создавать несколько экземпляров.каждый из них фокусируется на поле автозаполнения.
Можно ли каким-либо образом заставить автозаполнение читать входное значение заново каждый раз, когда я его использую, и запускать его только один раз?Или я могу каким-либо образом уничтожить объект, который поддерживает автоматическое завершение после того, как я его использовал, и в следующий раз создать новый?
Как я могу решить эту проблему, какие-либо идеи?