如何在grails控制器中创建动态单选按钮

时间:2014-03-15 15:01:18

标签: grails groovy gorm gsp

目前我正在使用grails和MySQL。

我必须在控制器中创建一个动态单选按钮并传递给视图。我怎么能这样做?

例如:  单选按钮 是还是不是  和 男性或女性

这些值现在位于数据库中。现在我的问题是如何在控制器中创建单选按钮并将其传递给grails视图?

List queryData
String s="";
for(int i=0;i<eventformAttri.size();i++){
    queryData=formField.masterTableQuery(eventformAttri[i].fieldQuery.toString()) //to fetch the radio buttons values
    for(int ii=0;ii<queryData.size();ii++){
        System.out.println("list data "+queryData[ii].field1)
        s+=queryData[ii].field1+" <input type='radio' name='myGroup"+i+"' value="+queryData[ii].field2+" />";
    }
    s+=",";
}
def vformData=s.split(',');
render(view:'/auditor/formView',model:[eventformAttri:eventformAttri,queryData:vformData])

2 个答案:

答案 0 :(得分:1)

您应该在视图中创建单选按钮,并使用嵌入式jquery库来执行此操作。例如,将视图中的jquery脚本与remotelink结合使用以与控制器进行交互:

$('input:radio[title=YOUR TITLE]').attr('checked',true);


    <g:remoteLink controller="yourcontroller" action="youraction" update="[success: 'results']" onSuccess="yourFunction(data) ">Your link</g:remoteLink>

答案 1 :(得分:1)

通过控制器详细说明Phat H. VU所说的内容,按原样发送queryData

render(view:'/auditor/formView',model:[queryData:queryData])

并使用视图呈现信息

<g:radioGroup name="dynaRad"
              labels="${queryData.collect{it.field1}}"
              values="${queryData.collect{it.field2}}">
    <p>${it.label} ${it.radio}</p>
</g:radioGroup>