各位 帮帮忙一个很容易的JS问题 在线等 急
<td align= "center " nowrap>
<select name= "projectId " id= "_projectId " onchange = "selectProjectId() " >
<option selected= "true "> 产品/项目名称 </option>
<option value= "all "> 全部 </option>
<%
if(projects!=null){
for(int i= 0;i <projects.size();i++){
PaProjectVO vo = (PaProjectVO)projects.get(i);
%>
<option value= " <%= vo.getProjectId()%> ">
<%= vo.getProjectName() %>
</option>
<%}}%>
</select>
</td>
function selectProjectId(){
var _projectId=document.getElementById( "_projectId ").value;
if(_projectId== "all "){
window.location= " <%= contextpath%> /servlet/GetPromisesResultServlet ";
}
else{
window.location= " <%= contextpath%> /servlet/GetPromisesResultServlet?_projectId= "+_projectId;
}
}
System.out.print( "canshu resultType=== "+resultType);
String projectId = request.getParameter( "_projectId ");
为什么 _projectId 一直取不到 输出 一直为空 <%= vo.getProjectName() %>
已经正常输出 是我函数里面有错还是 select里面有错
vo.getProjectId()正常应该输出为Integer 那边servlet 也是根据request.getParemeter( "_projectId ")的值来查询,现在关键是request.getParemeter( "_projectId ")一直为NULL 哪位朋友知道 非常感谢
------解决方案--------------------up
------解决方案--------------------没看懂,帮顶~
------解决方案--------------------String projectId = request.getParameter( "projectId ");
你改成下 试试!
------解决方案--------------------输出 一直为空 <%= vo.getProjectName() %> 证明你查询出来的结果集projects为空,查看你的查询参数输入:
你这样获得上页参数是不对的,因为你这个控件的name为projectId
String projectId = request.getParameter( "_projectId ");
你不能通过select的ID _projectId来从requese的getParameter方法获得,应该使用select的name获得参数,既
String projectId = request.getParameter( "projectId ");
在js中你可以使用alert(document.getElementById( "_projectId ").value);来查看js获得的select的值是否正确。
就到这里吧!!!