浏览 4783 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-07-04
显示所有的授权模块,如果当前角色拥有某一授权模块权限,那么在该模块前的多选框checked选中。 <div> <span>授权模块 <span class="requiredExample"> </span>:</span><br/> <s:iterator id="module" value="modules"> <input type="checkbox" name="moduleId" value="<s:property value="#module.id"/>" <s:if test="backRole.moduleId.indexOf(#module.id) != -1">checked="checked"</s:if>/><s:property value="#module.moduleName"/><br/> </s:iterator> </div> 请注意代码中的<s:if></s:if>标签,在本地运行可以,但是上传至服务器<s:if></s:if>标签就不起作用了(服务器为linux操作系统,本地为win7操作系统)。 为什么会出现这个问题我不知道,如果前辈们知道,请告诉我。 我换了另外一种做法(Javascript实现)。 <input type="hidden" id="moduleIdStr" name="moduleIdStr" value="<s:property value="backRole.moduleId"/>"/> <input type="hidden" id="len" name="len" value="<s:property value="modules.size()"/>"/> <div> <span>授权模块 <span class="requiredExample"> </span>:</span><br/> <s:iterator id="module" value="modules"> <%i++;%> <input type="checkbox" id="moduleId_<%=i%>" name="moduleId" value="<s:property value="#module.id"/>"/><s:property value="#module.moduleName"/><br/> </s:iterator> </div> js代码: jQuery(function($){ if($('#moduleIdStr').val() != ''){ var moduleIdStr = $('#moduleIdStr').val(); if($('#len').val() != ''){ var len = parseInt($('#len').val()); for(var i = 1; i<= len; i++){ if(moduleIdStr.indexOf($('#moduleId_' + i).val()) != -1){ $('#moduleId_' + i).attr("checked",true); }else{ $('#moduleId_' + i).attr("checked",false); } } } } }); 这样改后就没有问题了。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |