我目前正在尝试实现 3 个基于先前选择的下拉菜单。在 3 个选择中,我让最后两个相互合作。我有一个值,第一个下拉列表应该提供静态来测试其他两个完美工作的选择。但是现在,当我尝试将正确的选择添加到第一个下拉列表时,当我选择第二个下拉列表时,选择本身就会消失,并且它也没有传递在第一个下拉列表中选择的值。这是我的三个下拉菜单的代码,这些下拉菜单受上一个下拉菜单中的每个选择影响:
%{--Selection of specific site location--}%
<g:select name="locationSelection" from="${location_names}"
value="${params.site_id}" optionKey="location_id"
optionValue="short_name" noSelection="['': '----Site----']"
onchange="${remoteFunction(controller: 'term', action: 'findWeeksForSemester',
params: '\'location_id=\' + this.value', update: 'locationSelection',
options: '[asynchronous: false]')}"/>
<br>
%{--Selection of specific semester--}%
<g:select name="termSelection" id="termSelection" from="${result}"
value="${params.term_id}" style="" optionKey="semester_id"
optionValue="semester_name" noSelection="['': '----Term----']"
onchange="${remoteFunction(controller: 'term', action: 'findWeeksForSemester',
params: '\'semester_id=\' + this.value', update: 'weekSelection',
options: '[asynchronous: false]', onComplete: 'updateWeekSelection()')}"/>
<br>
%{--Selection of specific week--}%
<g:select name="weekSelection" from="" noSelection="['': '----Week----']"
onchange="${remoteFunction(controller: 'term', action: 'testRemote',
onSuccess: 'testRemote(data)', params: '\'semester_id=\' + this.value')}"/>
我目前正在尝试将选定的值分配给location_id
,这是一个参数,并让它在我的控制器中打印出来以确认它应该是的值,但始终传递的值是 null 并且从第一个下拉菜单中选择尝试从第二个下拉菜单中选择某些内容时消失。关于为什么这不起作用,我是否缺少一些重要的信息?