首页 > 代码库 > form提交表单

form提交表单

菜鸟的第一篇文章,今天在工作中遇到一个问题。下面来说说,也许很多大神都知道了,但作为菜鸟还是想说说。

对于table表格里面的数据,如下:

[html] view plain copy
 
 print?
  1. <pre name="code" class="html">  <table>  
  2.   <tr>  
  3.   <td>ID</td<td>姓名</td<td>年龄</td<td>地址</td><td>操作</td>  
  4.   </tr>  
  5.   <tr>  
  6.   <td>1</td<td>小明</td<td>26</td<td>美国</td><td><href=http://www.mamicode.com/"#" onclick="javascript:down();">下载</a></td>  
  7.   </tr>  
  8.   <tr>  
  9.   <td>1</td<td>小花</td<td>26</td<td>日本</td><td><href=http://www.mamicode.com/"#" onclick="javascript:down();">下载</a></td>  
  10.   </tr>  
  11.   <tr>  
  12.   <td>1</td<td>二妮</td<td>24</td<td>中国</td><td><href=http://www.mamicode.com/"#" onclick="javascript:down();">下载</a></td>  
  13.   </tr>  
  14.   </table>  



 



假如我们需要得到用户的id,然后和数据库进行交互,我们怎么把值传到后台?我们都知道,传值有两种方法:第一种是发送ajax,第二章就是我们的传统的方法即提交form表单。显然我们会很快想到第一种,即点击那一列得到id,发送ajax请求,这样的确可以做出来,但是,假如我们发送请求是要得到数据库里面的某个连接地址而提供下载,那么我们就不能发送ajax请求(因为ajax请求不能提供下载,好像会出错),那么,我们就剩一个办法,即form提交表单,那么我们如何用form提交表单呢?显然form里面不能放入table标签。其实我们可以用一种曲折的办法,我们在jsp中写一个form表单,然后当我们点击table得到Id时,就把这个id放入form里面,然后在提交表单,这样就可以解决问题了:

 

 

[html] view plain copy
 
 print?
  1. <form action="" method="post" id="down">  
  2. <input name="id" id="id">  
  3. </form>  

这里要注意一点:input里面的name的值要与传进来的数据其所在数据库对应的字段相同。

 

 

然后我们可以在js里面写一段代码把form里面的值传出去

 

[javascript] view plain copy
 
 print?
  1. <script type="text/javascript">  
  2. function down(){  
  3. document.getElementById("id").value()=("点击table得到的Id")  
  4. document.getElemetById("down").submit();  
  5.       
  6. }  
  7.   
  8. </script>  

这样我们就完成了值传递。

form提交表单