通过jquery添加g:select标签

时间:2014-03-03 12:55:15

标签: javascript jquery grails

我正在尝试通过我编写的jquery函数动态添加g:select标签。我知道该函数的工作原理是我在项目的其他地方使用它来添加一个普通的html元素。我试图添加的变量是

                 var row ='<tr class="prop"> <td valign="top" style="text-alight:left;" width="20%"> <label for="batsmanHome' + rowNum + '"> Batsman: </label> </td> <td valign="top" style="text-alight:left;" width="20%"> <g:select name="batsmanHome"' + rowNum + '" from="${fixtureInView.homeTeam.players.asList()}" optionKey="id"/> </td> <td valign="top" style="text-align:left;" width="20%"> <input onclick="addRowHome(this.form);" type="button" value="Add Player" /> </td></tr>'

这就出现了我无法理解的错误illegal colon after argument expression; solution: a complex label expression before a colon must be parenthesized @ line 20, column 116. Home" },'' + rowNum + '" from':evaluate( ^。有没有人有任何想法?

1 个答案:

答案 0 :(得分:1)

<g:select需要在服务器端进行处理,然后才能转换为常规select标记,浏览器和前端语言(如javascript)可以理解和操作。

您应该将代码更改为:

                 var row ='<tr class="prop"> <td valign="top" style="text-alight:left;" width="20%"> <label for="batsmanHome' + rowNum + '"> Batsman: </label> </td> <td valign="top" style="text-alight:left;" width="20%"> <select name="batsmanHome"' + rowNum + '"  ></select> </td> <td valign="top" style="text-align:left;" width="20%"> <input onclick="addRowHome(this.form);" type="button" value="Add Player" /> </td></tr>'