开发场景中遇到这样的一个问题,在网上也找了一些结局方法,但不成功,于是自己写了一个笨一点的方法,算是一种方法,希望对遇到该开发场景的朋友有所帮助。
freemarker html代码:
<table style="width:100%" class="table01" cellspacing="1" cellpadding="5">
<#list customlist as culi>
<tr>
<td class="td_title" style="width:179px" align="center" nowrap="nowrap">${culi.custom}:</td>
<td align="left" style="word-wrap:break-word;word-break:break-all;width:85%" colspan="3">
<#if culi.custom?index_of('完成状态')!=-1>
<input name="${culi.vfg}" type="checkbox" value="1"/><span>按计划进行</span>
<input name="${culi.vfg}" type="checkbox" value="2"/><span>进度顺利但有延误风险</span>
<input name="${culi.vfg}" type="checkbox" value="3"/><span>延误</span>
<!-- 这里需要回填CheckBox,我先把回填的值放着一个隐藏的input里面,然后在
function里面控制 -->
<input type="hidden" id="makeSureCheck" value="${culi.conten}"/>
<#else>
<input id="${culi.vfg}" name="${culi.vfg}"class="zxui-textbox" type="text"
style="width:600px;height:100px" value="${culi.conten}">
</#if>
</td>
</tr>
</#list>
</table>
js 根据隐藏input值回填CheckBox,当隐藏之大于0时,说明是回填值,因为数据库已对该字段保存否则显示无选择状态。
$(function(){ var makeSureCheck = $('#makeSureCheck').val(); makeSureCheck>0&&$('input:checkbox[value='+makeSureCheck+']').attr('checked','true'); }