Я использую Scripaculous 'в редакторе коллекций, чтобы предоставить пользователю список со списком клиентов для динамического назначения контакта. Я передаю параметр значения, как описано в documentation, поэтому, когда генерируется выбор, он будет автоматически выбирать текущего ассоциированного клиента (если его уже нет по умолчанию).Обновлять параметр автоматического выбора значения динамически с помощью Ajax.InPlaceCollectionEditor
Это хорошо работает, за исключением случаев, когда пользователь щелчок на поле «изменить меня» во второй раз, когда выбрано исходное значение, а не клиентом, который был выбран совсем недавно. Это связано с тем, что исходный вызов InPlaceCollectionEditor не изменился. Мой вопрос заключается в том, есть ли способ обновить значение автоматического выбора без динамического обновления всего сценария (это будет означать выбор всех клиентов снова через ajax, что возможно, но не идеально.)
Вот код:
<div id="editme">Test 1</div>
<script type="text/javascript">
new Ajax.InPlaceCollectionEditor(
'editme',
'/usercustomer/editCustomer/id/811',
{ collection: [['192981', "Test 1"],['192893', "Test 2"],['192894', "Test 3"] ... ],
ajaxOptions: {method: 'get'}
, value: 192893 } // specifying the value parameter auto selects object id 192893
);
</script>
Является ли это ограничением InPlaceCollectionEditor или существует какой-то другой способ обойти это?
Вызов Ajax.InPlaceCollectionEditor обновляет идентификатор div «editme», а не параметры вызова ajax.InPlaceCollectionEditor, который, как показано в приведенном выше коде, находится за пределами div. Как я уже говорил, «Мой вопрос заключается в том, есть ли способ обновить значение автоматического выделения без динамического обновления всего сценария» – markb
Когда вы хотите обновить значение автозапуска и с чего? Как я уже сказал, если вы используете (возможно глобальную) переменную вместо жестко заданного значения, вы можете установить ее, когда захотите, перед тем как сделать вызов ajax. Если вы хотите только установить выбранный параметр, вам нужно будет получить доступ к элементу select и установить его selectedIndex proerty. –