SSM实现根据后台控制禁用select
生活随笔
收集整理的這篇文章主要介紹了
SSM实现根据后台控制禁用select
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
場景
在對某條記錄進行編輯時,如果是測試簽約,則可以再進行編輯,更改為正式簽約。
但是如果是正式簽約,則不能再更改為測試簽約。
效果
代碼實現
1.前端BJUI框架點擊編輯按鈕時,將當前選中的ID傳到action
?<!-- 編輯按鈕--><shiro:hasPermission name="customerEdit"><a href="${ctx}/sys/cooperativePartnersManageAction/toEdit?id={#bjui-selected}" class="btn btn-blue" data-icon="edit" data-toggle="dialog" data-width="800" data-height="400" data-id="dialog-user" data-mask="true">編輯</a></shiro:hasPermission>2.來到后臺action,對應上面提交的地址:/sys/cooperativePartnersManageAction/toEdit
@RequestMapping(value="/toEdit")public ModelAndView toEdit(Integer id) {ModelAndView mv = null;try {//根據ID先查詢要編輯的數據SysPartners partner = this.sysPartnersService.getByPrimaryKey(id);//獲取簽約狀態,此處是通過關聯碼表來實現Map<String, Object> param = new HashMap<String, Object>();//0 表示正常數據param.put("status", "0");param.put("codeType", "contractStatus");//根據參數將相關碼表內容查詢出來List<SysCode> contractStatus = codeService.getByParam(param);mv = new ModelAndView();//傳遞簽約狀態mv.addObject("contractStatus", contractStatus);//傳遞操作類型,這里是編輯操作mv.addObject(ModelAndViewConstants.OPERATION_KEY,ModelAndViewConstants.OPERATION_VALUE_EDIT);//jsp頁面要顯示的標題titlemv.addObject(ModelAndViewConstants.TITLE_KEY, "修改合作商戶信息");//將查詢到的實體Model類傳遞mv.addObject(ModelAndViewConstants.PARTMER, partner);//跳轉到編輯界面mv.setViewName(ModelAndViewConstants.PARTNER_EDIT_VIEW);}catch(Exception ex) {LogService.getInstance(this).error("進入客戶編輯失敗:" + ex.getMessage(), ex);mv = new ModelAndView(ModelAndViewConstants.ERROR_VIEW);}return mv;}碼表:
3.然后來到編輯界面
<td ><label for="name" class="control-label x90">當前簽約狀態:</label><select data-toggle="selectpicker" name="contractStatus"><c:forEach? items= "${contractStatus}" var="cu"><option ${partner.contractStatus == 1?"disabled='disabled'":"" } value="${cu.codeValue}" ${partner.contractStatus == cu.codeValue?"selected='selected'":""}>${cu.codeName}</option>????????????????</c:forEach></select></td>注:
通過forEach循環標簽,將關聯碼表查詢到的選項全部顯示。
name="contractStatus",屬性與傳過來的實體類的屬性相對應。
items= "${contractStatus}"用來接收從碼表傳遞的參數,是通過上面action的:
?//傳遞簽約狀態
??mv.addObject("contractStatus", contractStatus);
來傳遞的。
distabled屬性以及selected屬性的顯示使用選擇表達式來實現。
總結
以上是生活随笔為你收集整理的SSM实现根据后台控制禁用select的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BJUI怎样对input添加自定义验证规
- 下一篇: SSM+BJUI实现添加和编辑共用一个页