我正在尝试使用教程here实现链式下拉框。我的课程并不像教程中那样简单。
我想链接create.gsp
类中Load
视图的下拉框。每个负载属于Account
类的帐户,每个帐户属于User
类的用户,每个用户都有Address
类的多个货物目的地。
我的目标是根据选择的帐户确定货物目的地字段的日期。
我无法理解教程中的AJAX功能(步骤3),以及它与Grails功能的关系(步骤4)。
这是AJAX代码:
function respondToSelect(event)
{
new Ajax.Updater("memberSelect",
"/chainedSelect/family/updateSelect",
{method:'get', parameters: {selectedValue : $F("familySelect")} }
);
}
这是Grails方法:
def updateSelect = {
def familySelected = Family.find("from Family as family where family.surname=:surname", [surname:params.selectedValue])
render (template:"selectMember", model : ['familySelected' : familySelected])
}
如果有人能够解释AJAX函数的第三个参数在做什么,我想我可以把Grails部分解决掉。
{method:'get', parameters: {selectedValue : $F("account")}}
答案 0 :(得分:4)
如果有人能解释一下AJAX的第三个参数 功能正在做
第三个参数是传递给Updater的参数对象,告诉它如何向服务器发出HTTP请求。
使请求成为HTTP GET请求:
method:'get'
传递以下命名查询参数:
{selectedValue: $F("account")}
$F
是retrieve the value of an element的原型快捷方式。在这种情况下,它获取ID为account
的DOM元素的选定值。
这最终导致类似以下请求:
GET /chainedSelect/family/updateSelect?selectedValue=someValue
其中“someValue”是“帐户”选择列表中当前选定的项目。