术语有误的情况大家可以多多留言,多多指教。下面我介绍下我用grails开发遇到的问题,以及解决方案。
Chosen:select下拉选择框美化插件。
比如说根据会员类型,角色动态加载不一样的值,因为角色用的是chosen插件,按照一般的处理,肯定会不行。
按照我下面的ajax请求就可以解决问题。
$.ajax({ url: "${createLink(controller: 'dataAuth',action: 'getRolesByMemberType')}", data: {"memberType":memberType}, success: function (data) { $("#roleAttribute").empty(); var options =''; for (var i=0; i<data.roles.length; i++) { var obj = data.roles[i]; options += "<option value='"+obj.id+"'>"+obj.name+"</option>"; } $("#roleAttribute").append(options); $("#roleAttribute").trigger("chosen:updated");//重新加载插件 },error:function(XMLHttpRequest,textStatus,errorThrown){ showResult(XMLHttpRequest.responseJSON) } })$("#roleAttribute").trigger("chosen:update"); 这一句是解决的关键。
2:下面的问题是关于grails将值返回前台转换的问题。
List<Role> roles= dataAuthService.getRolesOutOfDataAuth(memberType);
一般情况下,在grails返回数据到前台就是 render(roles:roles),这样做的结果会返回的是一个字符串,那么在前台处理的时候会有问题。render( [roles:roles] as JSON) 这样操作就可以把值转换为json。
3:grails关于把两个不string进行合并。
比如说:
String a="1,2,3";
String b="4,5,6"
期待合并成一个字符串。java中的常规操作我就不说了。说下grails的处理吧
String c= [a,b].join(",") //返回的是1,3,4,6
Role role1=new Role()
role1.name="1,2.3,4";
Role role2=new Role()
role1.name="5,6";
期待 合并得到个role.name="1,6"
String name= [role1,role2]*.name.join(",");
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。