无法从使用jQuery下拉中获取所选值

时间:2011-06-16 07:39:14

标签: javascript jquery grails groovy gsp

我正在尝试将新字段添加到由其他人编写的现有gsp页面中。

    <g:select name="clientId" multiple = "yes" size = "4" from="${com.mycompany.fleet.partymodel.roles.ClientRole.list()}" class = "filter_combo" optionKey="id" />

并且通过使用jQuery,他得到了像这样的选择值

var selectedclients = "${clientId}";
console.log(selectedclients); // prints id of selected Clients 

我在同一页面中添加了这样的新下拉列表

<g:select name="contractId"  multiple = "yes" size = "4" from="${com.mycompany.fleet.rules.Contract.list()}" class = "filter_combo" optionKey="id"/>

我想尝试使用像这样的jQuery获取所选值

var selectedcontracts = "${contractId}";

但它没有取得选定的值......我在这里做错了吗?

${clientId}到底意味着什么?

2 个答案:

答案 0 :(得分:2)

我不相信这是使用JQuery,只是使用标准GSP模板将clientId的当前值放入var selectedclients = "${clientId}";的javascript中。

即:生成页面时,${clientId}将替换为模型中的值

您是否正在向控制器中的模型添加contractId

要注意的一件事是,如果clientIdcontractId中有双引号(即,如果clientId为Tim"busy" Yates,那么这将生成无效的javascript,因为生成的代码看起来像:

var selectedclients = "Tim "working" Yates" ;

但是,如果它只是一个整数id,那么我想这没关系

答案 1 :(得分:0)

怎么样:

var selectedcontracts = $('select [name="contractId"]').val();