#grails #autocomplete #grails-plugin
#grails #Автозаполнение #Grails-плагин
Вопрос:
У меня есть этот код в моем .gsp:
<input id="selection1" type="hidden" name="selection1" value="test"/>
<gui:autoComplete
minQueryLength='2'
queryDelay="0.2"
id="corso"
controller="utente"
action="corsoAutoComplete"
resultName="corsi"
dependsOn="selection1"
/>
Я использую Grails-ui 1.2
Мой контроллер таков:
def corsoAutoComplete={
println params;
def corso = Corso.findAllByNomeIlike("%${params.query}%",[max:15,cache:true])
corso = corso.collect{
[id:it.id, name:it.nome]
}
def jsonCorso = [corsi:corso]
render jsonCorso as JSON
}
параметры println не возвращают значение ввода с id=»selecion1″
почему???
Ответ №1:
1) Несмотря на пример на странице плагина, я не уверен, что автозаполнение пользовательского интерфейса Grails dependsOn
может быть чем угодно, кроме другого элемента управления автозаполнением, потому что ему необходимо подписаться на событие «itemselect» в элементе управления «depended on» (посмотрите на источник плагина для InputTagLib.groovy)
2) Если вы измените элемент управления «зависит от» на другой элемент автозаполнения (их можно заставить работать как обычные выборки HTML), попробуйте использовать следующий синтаксис для dependsOn
свойства:
dependsOn="[label:'(control name)',value:'(desired param name)',useId:(true to use select id value)]"
Также взгляните на демонстрацию grails ui, в которой есть рабочий пример кода для каждого из компонентов:
http://code.google.com/p/guidemo /