springMVC搜尋時候的下拉選和修改時候的下拉選比較
寫法一:用於搜尋(下拉選的資料寫固定值)
<sf:select path="status" value="" class="form-control">
<sf:option value="">請選擇</sf:option>
<sf:option value="0">已通過</sf:option>
<sf:option value="1">待稽核</sf:option>
<sf:option value="2">已駁回</sf:option>
</sf:select>
controller中檢索條件的獲得:
// 檢索條件:狀態
param.put("reject", b008009Bean.getStatus());
寫法二:用於搜尋(下拉選的資料動態獲取)
jsp頁面寫法:b015001.jsp
<sf:select path="status_id" value="" class="form-control">
<option value="">請選擇</option>
<sf:options items="${b015001Bean.statusListOptions}" itemValue="id" itemLabel="status_name" />
</sf:select>
總bean寫法:
public class B015001Bean extends ListPageBean {
/** 提現狀態集合 */
private List<B015001StatusBean> statusListOptions;
}
下拉選狀態bean寫法:
public class B015001StatusBean {
/**狀態id */
private Integer id;
/** 狀態名字 */
@Length(max = 20)
private String status_name;
}
controller寫法:
// 查詢提現狀態的下拉選
List<B015001StatusBean> wdListOptions = b015001Service.statusList();
// bean中的屬性 statusListOptions
b015001Bean.setStatusListOptions(wdListOptions);
model.addAttribute("b015001Bean", b015001Bean);
return "/b015/b015001";
serviceImpl 寫法:
/**
* 獲取提現狀態下拉選,寫的固定值
* @return
*/
public List<B015001StatusBean> statusList() {
// 建立存放提現狀態Bean的List
List<B015001StatusBean> resultlist = new ArrayList<B015001StatusBean>();
for (int i = 0; i < 3; i++) {
B015001StatusBean wdStatus = new B015001StatusBean();
if(i==0){
wdStatus.setId(0);
wdStatus.setStatus_name("申請中");
}else if(i==1){
wdStatus.setId(1);
wdStatus.setStatus_name("已通過");
}else if(i==2){
wdStatus.setId(2);
wdStatus.setStatus_name("已駁回");
}
resultlist.add(wdStatus);
}
// 返回查詢的結果集合
return resultlist;
}
寫法三:用於修改,進入頁面後,下拉選狀態的保持
-- ${b015002Bean.status_id}的值與 itemValue="id" 相等option處於選中狀態
-- 總bean中的資料的 status_id=1,下拉選集合中的id=1,status_name=‘已通過’,此時進入頁面下拉選就會保持在‘已通過option上’
<div class="col-sm-3">
<sf:select path="status_id" value="${b015002Bean.status_id}" class="form-control">
<option value="">請選擇</option>
<sf:options items="${b015002Bean.statusListOptions}" itemValue="id" itemLabel="status_name" />
</sf:select>
<sf:errors path="status_id" cssStyle="color:red" />
</div>