当前位置:编程学习 > JAVA >>

jsp 下拉框取得数据库的值得问题 在线高分等答复

如题 用的是webwork框架  还有Ibatis 
在后台的Action 已经将数据库取的值赋到了list中 运行成功的   然后JSP页面想要用webwork的迭代器来讲数据显示出来  可是一直显示不出来 请教一下该怎么改 
下面是JSP代码 
 <td  width="38%" class="table-contenttd1" id="myselect">
<select name="userDomain.name" id="name" style="width:150px">
<option selected value="">----------- 全部 -----------</option>
<ww:iterator value="factoryList">
<option value="<ww:property value='name'/>"></option>
</ww:iterator>
</select>
</td>
然后是action的 写在不同的java里  我把相关的方法都贴出来
 public String go(){
    
UserService userService = new UserService();
    factoryList= userService.getfactoryListByUser(id);
    System.out.println(factoryList);
    return "sucsess";
}

   public List   getfactoryListByUser(Object param){
dao = new IbatisDao();
return dao.queryForList("UserDomain_getfactoryListbyuser_select",param);
}


public List queryForList(String sqlMapId, Object param) {
List list = null;
try {
list = this.getSqlMap().queryForList(sqlMapId, param);
} catch (Exception e) {
e.printStackTrace();
log.error(e.getMessage());
 
throw new ApplicationException(e.getMessage());
}
if (list == null) {
list = new ArrayList();
}
return list;

}


<sqlMap namespace="UserDomain" >

<select id="UserDomain_getfactoryListbyuser_select" resultClass="string" >
  select name from glb 
</select>

</sqlMap>
--------------------编程问答--------------------
<ww:iterator value='list' status='status' id='arr'>	
<ww:property value='#arr[0]'/> ,<ww:property value='#arr[1]'/>'
</ww:iterator>
试试 --------------------编程问答--------------------
引用 1 楼 defonds 的回复:
<ww:iterator value='list' status='status' id='arr'>	
<ww:property value='#arr[0]'/> ,<ww:property value='#arr[1]'/>'
</ww:iterator>
试试

是否将list改成我自己的list名就行了    还是要改下其他的  如果是前者的话还是不行    后者就再请教你 --------------------编程问答-------------------- 你先去试试吧 --------------------编程问答-------------------- 你是调用这个方法 public List   getfactoryListByUser(Object param){
dao = new IbatisDao();
return dao.queryForList("UserDomain_getfactoryListbyuser_select",param);
}

--------------------编程问答--------------------
引用 3 楼 defonds 的回复:
你先去试试吧

试过了  不行的 我对框架不是很熟悉  只是在开头加了 <%@ taglib uri="/webwork" prefix="ww" %> 
是否还要添加其他的 比如说调用方法之类的 --------------------编程问答--------------------
引用 4 楼 rui888 的回复:
你是调用这个方法 public List   getfactoryListByUser(Object param){
dao = new IbatisDao();
return dao.queryForList("UserDomain_getfactoryListbyuser_select",param);
}

对的  能够查询到数据库的数据 但是问题是我想在网页上的下拉框中显示 出来
--------------------编程问答-------------------- 朋友你看下可以换这种方式做吗?
<c:forEach items="${userList}" var="user">
<option value="${user.id}"
<c:if test="${user.id==queryCondition.name}">selected</c:if>>${user.name}</option>
</c:forEach> --------------------编程问答-------------------- 除 --------------------编程问答--------------------
private List list;// 加上对应set/get

list= dao.queryForList("UserDomain_getfactoryListbyuser_select",param);


< ww:property value = "%{list}" />
--------------------编程问答--------------------
引用 9 楼 rui888 的回复:
private List list;// 加上对应set/get

list= dao.queryForList("UserDomain_getfactoryListbyuser_select",param);


< ww:property value = "%{list}" />

这些内容是放在何处  能具体点么  谢谢! --------------------编程问答--------------------
private List list;// 加上对应set/get

UserService userService = new UserService();
    list= userService.getfactoryListByUser(id);
    System.out.println(list);
    return "sucsess";
}

//jsp
<ww:property value = "%{list}" />
--------------------编程问答-------------------- <option value="值">这里才是显示的内容</option>


这样写如何
<option value="<ww:property value='name'/>"><ww:property value='name'/></option> --------------------编程问答-------------------- 先不说你的TLD文件引的对不对,用发就不对。 --------------------编程问答-------------------- java代码:
<% List<Bean名字> l=request.getAttribute("名字");//你放到共享对象中的名字。Bean名字是你集合中的对                      象名
   for(Bean名字 ss:l){
%>
<option value="<%=ss%>"><%=ss%></option>
<%}%> --------------------编程问答-------------------- <div>
<div>
<select id="province2" name="province2" >
</select>
<select id="city2" name="city2">
</select>
</div>
<div>
<select id="province3" name="province3" >
</select>
<select id="city3" name="city3">
</select>
<select id="homeTown3" name="homeTown3">
</select>
</div>
<div>
<select id="province4" name="province4" >
</select>
<select id="city4" name="city4">
</select>
<select id="homeTown4" name="homeTown4">
</select>
<select id="town4" name="town4">
</select>
</div>

</div>

<script>
$(function (){
initTwo("地区级联","province2",3,"选择省x","city2","","选择市x");
//initTwo("地区级联","province2","","选择省x","city2","","选择市x");
initThree("地区级联","province3",3,"选择省y","city3","","选择市","homeTown3",13,"选择县");
//initThree("地区级联","province3","","选择省y","city3","","选择市y","homeTown3","","选择县y");
initFour("地区级联","province4",3,"选择省z","city4","","选择市","homeTown4",7,"选择县","town4",10,"选择镇");
//initFour("地区级联z","province4","","选择省z","city4","","选择市z","homeTown4","","选择县z","town4","","选择镇z");
});
</script>
<script type="text/javascript" src="/jslib/dataDictionary.js"></script>

今天刚写的代码,都是对级联的下拉框操作 --------------------编程问答-------------------- /**
 * 初始化二级级联
 * @param dataDictionaryTypeName  数据字典类别名称
 * @param idone 初始化第一个参数的id
 * @param valueone 初始化第一个参数的值
 * @param aliasone 初始化第一个参数的下拉框的原始值
 * @param idtwo 初始化第二个参数的id
 * @param valuetwo 初始化第二个参数的值
 * @param aliastwo 初始化第二个参数的下拉框的原始值
 * @return
 */
function initTwo(dataDictionaryTypeName,idone,valueone,aliasone,idtwo,valuetwo,aliastwo){
$("#"+idone).live("change",function (){
var parentId=this.options[this.selectedIndex].value;
getChangeNextDictionary(parentId,idtwo,aliastwo,option);
});
var list=new Array();
var option;
getOneDictionaryList(dataDictionaryTypeName,idone,valueone,aliasone,option);
getNextDictionaryList(valueone,idtwo,valuetwo,aliastwo,option);
}


/**
 * 初始化易做图级联
 * @param dataDictionaryTypeName 数据字典类别名称
 * @param idone  初始化第一个参数的id
 * @param valueone  初始化第一个参数的值
 * @param aliasone  初始化第一个参数的下拉框的原始值
 * @param idtwo 初始化第二个参数的id
 * @param valuetwo 初始化第二个参数的值
 * @param aliastwo  初始化第二个参数的下拉框的原始值
 * @param idthree 初始化第三个参数的id
 * @param valuethree 初始化第三个参数的值
 * @param aliasthree 初始化第三个参数的下拉框的原始值
 * @return
 */
function initThree(dataDictionaryTypeName,idone,valueone,aliasone,idtwo,valuetwo,aliastwo,idthree,valuethree,aliasthree){
$("#"+idone).live("change",function (){
var parentId=this.options[this.selectedIndex].value;
getChangeNextDictionary(parentId,idtwo,aliastwo,option);
getChangeNextDictionary("",idthree,aliasthree,option);
});
$("#"+idtwo).live("change",function (){
var parentId=this.options[this.selectedIndex].value;
getChangeNextDictionary(parentId,idthree,aliasthree,option);
});
var list=new Array();
var option;
getOneDictionaryList(dataDictionaryTypeName,idone,valueone,aliasone,option);
getNextDictionaryList(valueone,idtwo,valuetwo,aliastwo,option);
getNextDictionaryList(valuetwo,idthree,valuethree,aliasthree,option);
}


/**
 * 初始化四级级联
 * @param dataDictionaryTypeName 数据字典类别名称
 * @param idone  初始化第一个参数的id
 * @param valueone  初始化第一个参数的值
 * @param aliasone   初始化第一个参数的下拉框的原始值
 * @param idtwo  初始化第二个参数的id
 * @param valuetwo 初始化第二个参数的值
 * @param aliastwo 初始化第二个参数的下拉框的原始值
 * @param idthree  初始化第三个参数的id
 * @param valuethree  初始化第三个参数的值
 * @param aliasthree  初始化第三个参数的下拉框的原始值
 * @param idfour  初始化第四个参数的id
 * @param valuefour  初始化第四个参数的值
 * @param aliasfour  初始化第四个参数的下拉框的原始值
 * @return
 */
function initFour(dataDictionaryTypeName,idone,valueone,aliasone,idtwo,valuetwo,aliastwo,idthree,valuethree,aliasthree,idfour,valuefour,aliasfour){
$("#"+idone).live("change",function (){
var parentId=this.options[this.selectedIndex].value;
getChangeNextDictionary(parentId,idtwo,aliastwo,option);
getChangeNextDictionary("",idthree,aliasthree,option);
getChangeNextDictionary("",idfour,aliasfour,option);
});
$("#"+idtwo).live("change",function (){
var parentId=this.options[this.selectedIndex].value;
getChangeNextDictionary(parentId,idthree,aliasthree,option);
getChangeNextDictionary("",idfour,aliasfour,option);
});
$("#"+idthree).live("change",function (){
var parentId=this.options[this.selectedIndex].value;
getChangeNextDictionary(parentId,idfour,aliasfour,option);
});

var list=new Array();
var option;
getOneDictionaryList(dataDictionaryTypeName,idone,valueone,aliasone,option);
getNextDictionaryList(valueone,idtwo,valuetwo,aliastwo,option);
getNextDictionaryList(valuetwo,idthree,valuethree,aliasthree,option);
if(MyJs.isNull(valuetwo)){
getNextDictionaryList("",idfour,valuefour,aliasfour,option);
}else{
getNextDictionaryList(valuethree,idfour,valuefour,aliasfour,option);
}
}

这个是js
补充:Java ,  Web 开发
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,