当前位置: 代码迷 >> Java Web开发 >> onClick传参有关问题
  详细解决方案

onClick传参有关问题

热度:55   发布时间:2016-04-16 22:16:32.0
onClick传参问题
<%  for(bookInfo b:bookInfoList1.getBookInfoList()){
                   out.print("<TR>");
                   out.print("<TD >"+b.getSQSJ()+"</TD>");
                   out.print("<TD >"+b.getSQDW() +"</TD>");  %>
                  
                 <TD >  <input type="button" name="Submit" value="修改" onClick="window.location.href='bx.jsp?SQSJ='+b.getSQSJ()">
       
                  <TD > <input type="button" name="Submit2" value="撤销" onClick="cx()">
                   
          <%         out.print("</TR>") ; 

       }%>

bookInfoList1是bean里面的一个bookinfo集合,这种情况下怎么用onClick传参?
onClick="window.location.href='bx.jsp?SQSJ='+b.getSQSJ()"里 b.getSQSJ()获取不到数值。
------解决方案--------------------

<input type="button" name="Submit" value="修改" onClick="window.location.href='bx.jsp?SQSJ=<%=b.getSQSJ()%>'">

------解决方案--------------------
b.getSQSJ()这是java代码,JSP里面用java代码写在<%%>里面,这里输出用<%= %>
------解决方案--------------------
这样在JSP页面中使用Java代码的方式,源码看起来太费劲了
为什么不使用标签呢?
例如如果使用了struts框架,就可以使用struts框架,如果没有的话,也可以使用jstl标签
------解决方案--------------------
哪有你这样写的。。
既然你前面用的是
out.print("<TR>");
out.print("<TD >"+b.getSQSJ()+"</TD>");
out.print("<TD >"+b.getSQDW() +"</TD>"); 
这种方法,就继续用这种啊。。
out.print("<TD ><input type='button' name='Submit' value='修改' onClick=\"window.location.href='bx.jsp?SQSJ='"+ b.getSQSJ() + "\">");

------解决方案--------------------
我一般写js都不喜欢传参数了,都是给个class让他直接绑定
$("bosy").on("click",".class",test)
function test(){
var p = $(this).xxxxx
var p2 = $(this).prev().xxxx
}
现在一帮这样干,不喜欢在页面里边写一堆js
  相关解决方案