我提供一个方法。把i变量 作为<td>保存 </td>标签值.
你好,感谢你的浏览和回答,你可否把你的方法说的再详细点呢
<!DOCTYPE html> <html> <head> <meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" /> <meta http-equiv="Content-Type" content="text/html; charset=GBK" /> <title>链接测试</title> </head> <body> <form action="chooseBook" method="post" id="search_form"> <table> <tr> <td style="color:#000; font-weight:400"> </td> <td> <input type="text" value="11" id='name<%=i%>' /></td> <td> <input type="text" value="12" id="age<%=i%> /></td> <td style="width:100px"><a onclick= "querydetail('<%=i%>')">保存 </a></td> </tr> </table> </form> <script type="text/javascript"> //定义了XMLHttpRequest对象 var xmlrequest; function createXMLHttpRequest() { if(window.XMLHttpRequest) { // DOM 2浏览器 xmlrequest = new XMLHttpRequest(); } else if (window.ActiveXObject) { // IE浏览器 try { xmlrequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlrequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { } } } } function dealdetail(i){ var name = document.getElementById("name" + i); var age = document.getElementById("age" + i); createXMLHttpRequest(); var uri = "servlet/save?name=" + name +"age=" + age; xmlrequest.onreadystatechange = processResponse; xmlrequest.open("POST", uri, true); xmlrequest.setRequestHeader("Content-Type" , "application/x-www-form-urlencoded"); xmlrequest.send(); } function processResponse(){ //处理返回 } </script> </body> </html>
每个要保存的input 加一个id, 比如id的命名id= "name<%=i%>"的方式。如上例子中,最后用XMLHttpRequest()来提交你要保存的参数。
@David5201: 今天才看到回复,sorry,我之前用类似的方法实现了,不过谢谢你的方案。
嗯,准确地说是<tr class=i>更方便些
以后是不可能把java代码放入到jsp中的,看看就行了
在这个场景中,不存在“组装”的问题。
保存操作,理应是post方式的。
你需要的是一个 表单Form。
用js组装href,完全没问题,我实现了
@南方博客: 最后不是用XMLHttpRequest提交的吗?还是用<a>的href吗?其实也可以用<jsp:forward>来提交request。但是,我不记得拼好请求参数后,getElementbyId(<a>)得到这个DOM对象后,怎样触发<a>的href属性。你能把这代码分享出来吗?
@David5201: js内href的组装参考https://zhidao.baidu.com/question/1110318705592719779.html
js内页面重定向:location.href=
'newpage.html'
;
写一个方法。通过this关键字获取当前列信息。
谢谢,学习了
这么简单的问题, 开动你的大脑,好好想一下,你是循环输出的,想让id不重复,你循环变量i不是每一次循环都会变吗?
我已经解决了,不过还是谢谢