<高分求助>jsp显示指定路径的图片
我目前在做一个上传图片后显示图片的功能:父页面有个按钮,点击按钮弹出一个模式窗口上传,模式窗口上传完毕后自动关闭并且会把参数返回给父页面,而且上传的文件是放在C盘指定目录...
我目前在做一个上传图片后显示图片的功能:父页面有个按钮,点击按钮弹出一个模式窗口上传,模式窗口上传完毕后自动关闭并且会把参数返回给父页面,而且上传的文件是放在C盘指定目录,并非服务器目录下。下面就是关键了:我希望在上传窗口关闭后在父页面显示图片信息,这个如何完成?求高人指点,先谢谢各位!
看下面代码,关键就是callback方法怎么写。。。
/**
* 跳转到上传页
* functionId:功能ID
* fileType:文件类型
* maxSize:文件容量上限
* callback:回调函数,返回三个参数:文件真名、文件存放路径名和文件大小
*/
function openUpload(functionId,fileType,maxSize,callback){
var url = root+"/CommonController.jhtml?method=goFileUpload&";
if(functionId!=null){
url = url + "functionId="+functionId+"&";
}
if(fileType!=null){
url = url + "fileType="+fileType+"&";
}
if(maxSize!=null){
url = url + "maxSize="+maxSize;
}
var win = window.showModalDialog(url,"","dialogWidth:300px;dialogHeight:150px;scroll:no;status:no");
if(win != null){
var arrWin = win.split(",");
callback(arrWin[0],arrWin[1],arrWin[2]);
}
}
function openUpload_(){
openUpload(null,'JPG,GIF,JPEG,PNG','5',callback);
}
function callback(realName,saveName,maxSize){
回调获取上传窗口的参数信息,后面怎么做???????
});
}
<tr>
<td>头像:</td>
<td><input type="button" name="photo" id="photo_" onclick="openUpload_()" value="上传"/></td>
</tr>
<tr>
<td colspan="2">
<img id="photo_id" alt="头像" src="<%=root%>/common/image/noimg.png">
</td>
</tr> 展开
看下面代码,关键就是callback方法怎么写。。。
/**
* 跳转到上传页
* functionId:功能ID
* fileType:文件类型
* maxSize:文件容量上限
* callback:回调函数,返回三个参数:文件真名、文件存放路径名和文件大小
*/
function openUpload(functionId,fileType,maxSize,callback){
var url = root+"/CommonController.jhtml?method=goFileUpload&";
if(functionId!=null){
url = url + "functionId="+functionId+"&";
}
if(fileType!=null){
url = url + "fileType="+fileType+"&";
}
if(maxSize!=null){
url = url + "maxSize="+maxSize;
}
var win = window.showModalDialog(url,"","dialogWidth:300px;dialogHeight:150px;scroll:no;status:no");
if(win != null){
var arrWin = win.split(",");
callback(arrWin[0],arrWin[1],arrWin[2]);
}
}
function openUpload_(){
openUpload(null,'JPG,GIF,JPEG,PNG','5',callback);
}
function callback(realName,saveName,maxSize){
回调获取上传窗口的参数信息,后面怎么做???????
});
}
<tr>
<td>头像:</td>
<td><input type="button" name="photo" id="photo_" onclick="openUpload_()" value="上传"/></td>
</tr>
<tr>
<td colspan="2">
<img id="photo_id" alt="头像" src="<%=root%>/common/image/noimg.png">
</td>
</tr> 展开
5个回答
展开全部
如果文件没有保存在你的服务器项目目录中是无法让用户直接访问到的,必须有一个浏览器可以访问的虚拟路径才可以访问。所以你返回的saveName必须是一个服务器上可以访问到的路径。
callback中显示图片比较容易,直接修改img的src就可以了。
document.getElementById("photo_id").src = saveName + realName;
callback中显示图片比较容易,直接修改img的src就可以了。
document.getElementById("photo_id").src = saveName + realName;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个简单的例子,不是知道是不是你需要的。
我的理解是你要把子窗体中的一些数据显示到父窗口中。
a1.html
<HTML>
<HEAD>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function showUploadModelDialog(){
var contentObj = document.getElementById("content");
showModelessDialog('a2.html',contentObj,"status:false;dialogWidth:300px;dialogHeight:300px");
}
function test(){
content.innerHTML = "hello";
}
//-->
</SCRIPT>
<BODY>
<span id="content"></span><br>
<input type="button" value="upload" onclick="test();">
<input type="button" value="upload" onclick="showUploadModelDialog();">
</BODY>
</HTML>
a2.html
<HTML>
<HEAD>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function uploadToClose(){
var content = "file path : "+document.getElementById("imgTxt").value + "<br>";
content +="file size : "+ document.getElementById("sizeTxt").value ;
var arguments = window.dialogArguments;
arguments.innerHTML = content;
window.close();
}
//-->
</SCRIPT>
<BODY>
<input type="text" value="C:\image\1.jpg" id="imgTxt"><br>
<input type="text" value="45612" id="sizeTxt"><br>
<input type="button" value="upload" onclick="uploadToClose();"><br>
</BODY>
</HTML>
我的理解是你要把子窗体中的一些数据显示到父窗口中。
a1.html
<HTML>
<HEAD>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function showUploadModelDialog(){
var contentObj = document.getElementById("content");
showModelessDialog('a2.html',contentObj,"status:false;dialogWidth:300px;dialogHeight:300px");
}
function test(){
content.innerHTML = "hello";
}
//-->
</SCRIPT>
<BODY>
<span id="content"></span><br>
<input type="button" value="upload" onclick="test();">
<input type="button" value="upload" onclick="showUploadModelDialog();">
</BODY>
</HTML>
a2.html
<HTML>
<HEAD>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function uploadToClose(){
var content = "file path : "+document.getElementById("imgTxt").value + "<br>";
content +="file size : "+ document.getElementById("sizeTxt").value ;
var arguments = window.dialogArguments;
arguments.innerHTML = content;
window.close();
}
//-->
</SCRIPT>
<BODY>
<input type="text" value="C:\image\1.jpg" id="imgTxt"><br>
<input type="text" value="45612" id="sizeTxt"><br>
<input type="button" value="upload" onclick="uploadToClose();"><br>
</BODY>
</HTML>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用applicationContext来获取?这个请求和响应的范围我也有点弄不明白了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你是用struts2上传文件的话,那就简单了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
太复杂了,还是问下专业人士吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询