grails形成可选控件

grails形成可选控件,grails,gsp,Grails,Gsp,我有一个有两个选择的表单,但是第二个选择是可选的,这取决于从第一个选择中选择的值。例如: <select name="country" from="['US', 'CA']"> <select name="language" from="['FR', 'EN']" disabled=true> 只有在从国家/地区选择CA时,我才希望语言组合框处于活动状态。Grails在默认情况下不提供这样做的方法。由于GSP标记允许您使用普通HTML事件,因此您需要编写JavaS

我有一个有两个选择的表单,但是第二个选择是可选的,这取决于从第一个选择中选择的值。例如:

<select name="country" from="['US', 'CA']">

<select name="language" from="['FR', 'EN']" disabled=true>


只有在从国家/地区选择CA时,我才希望语言组合框处于活动状态。

Grails在默认情况下不提供这样做的方法。由于GSP标记允许您使用普通HTML事件,因此您需要编写JavaScript来根据第一个选择的值启用和禁用第二个选择。要做到这一点,您需要查看onchange事件。如果你需要做很多自定义UI类型的事情,你可能想看看如何使用Grails的JavaScript插件。默认情况下,包含在Grails中。其他几个java脚本库作为Grails插件提供,包括和

我同意,javascript就是您想要的。我建议在JQuery中编写这篇文章,因为我相信Grails将在v1.4中使之成为默认(优于原型)。要在JQuery中实现这一点,应该是这样的:

$("[name=country").change(function() {
  $("[name=language]").attr("disabled", ($(this).val() == "CA"));
});

您已经标记了这个
grails
gsp
,但实际上我会使用Javascript来做这件事-检查第一个选择并根据需要隐藏/取消隐藏第二个选择。看起来像