我的相关代码如下:
javascript函数如下:
function choose(src)
{
var imgURL;
imgURL=src;
/*.......
中间的这里的代码我不会写,怎么样写代码把图片路径的数据传到下面的java代码中去
.......
*/
alert("分享成功");
} 一张图片的相关代码:<img src="images/00.jpg" onclick="choose(this.src)" />
在jsp页面中写了连接数据库的代码如下:
<%
try {
String spath = "data/test.mdb";
String dbpath = application.getRealPath(spath);
String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=" + dbpath;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(url);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
/*.........在这里改如何下写代码才能将javascript函数中的路径变量接收到,,
并且传进我的数据库的"user"表中,假设保存到id=1的用户表中,,,该如何写,确切地说,如何获得那个变量
........
*/
rs3.close();
stmt.close();
conn.close();
} catch (Exception e) {
out.print("连接数据库错误!错误信息如下:<br>");
out.print(e.getMessage());
}
%>被这个问题弄得都快崩了,,,难为人
javascript函数如下:
function choose(src)
{
var imgURL;
imgURL=src;
/*.......
中间的这里的代码我不会写,怎么样写代码把图片路径的数据传到下面的java代码中去
.......
*/
alert("分享成功");
} 一张图片的相关代码:<img src="images/00.jpg" onclick="choose(this.src)" />
在jsp页面中写了连接数据库的代码如下:
<%
try {
String spath = "data/test.mdb";
String dbpath = application.getRealPath(spath);
String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=" + dbpath;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(url);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
/*.........在这里改如何下写代码才能将javascript函数中的路径变量接收到,,
并且传进我的数据库的"user"表中,假设保存到id=1的用户表中,,,该如何写,确切地说,如何获得那个变量
........
*/
rs3.close();
stmt.close();
conn.close();
} catch (Exception e) {
out.print("连接数据库错误!错误信息如下:<br>");
out.print(e.getMessage());
}
%>被这个问题弄得都快崩了,,,难为人
window.self.location = "upload.jsp?command=upload&src=" + src;
}
然后再下面的java代码中做下判断<%
//在这里判断下如果是上传命令就去执行下面的上传图片或者其他的操作存入数据库
if(command.equals("upload")) {
//这里就是你想要得到的图片数据源
String src = request.getParameter("src");
try {
String spath = "data/test.mdb";
String dbpath = application.getRealPath(spath);
String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=" + dbpath;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(url);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs3.close();
stmt.close();
conn.close();
} catch (Exception e) {
out.print("连接数据库错误!错误信息如下:<br>");
out.print(e.getMessage());
}
}
%>
我不是很明确你的意思。。看这个是不是你想要的结果
现在我在js函数中有一个var st;这样的变量;
我想在jsp页面中的<% java程序片 %>中获取到这个st,请问该如何写,其实本质就是这个问题,,可能我说的有点乱,,大家听不明白,,简单的说,就是这次的说法,,谢谢。
我一直在线,,等着您的回归。
可以通过ajax来实现你这个要求,无刷新.
点击提交按钮后,请求以异步是方式提交到当前jsp,然后在jsp中获取src的值,完成保存.
至于ajax怎么提交,百度一下就可以了.
你这样的想法是不行的。
JSP的页面,服务端的JSP容器在编译阶段就会运行其中的JAVA代码,而JS是在客户端浏览器调用的,先存在的东西怎么能调用后存在的东西呢?唯一能变通的方法应该是把JAVA代码移到后台,页面上使用AJAX,在页面加载完那个JS变量后,将这个变量传递到后台去处理。也不建议你把JAVA代码写到页面去,这样做业务逻辑和显示层混杂到一起,尤其是你还调用了数据库,等于数据层也混进去了,非常不规范。
<input id="imagesId" value="" type="hidden" />
function choose(src)
{
document.getElementById("imagesId").value=src;
//......
}
如果你的JSP代码跟JS代码不是一个页面就可以这样写、然后request取值!
如果是同一个页面、最好把它们分开来、然后request取值!
谢谢,我一直在线等着大家的回复哈。