上传文件时不刷新页面,上传成功后显示上传成功。

功夫panda 发布于 2012/02/09 09:58
阅读 2K+
收藏 1

点击上传按钮时把文件上传页面无刷新状态

 

点击上传按钮时页面无刷新状态,用ajax好呢还是用什么呢?大家帮个忙

上传成功后后面提示上传成功。

加载中
0
功夫panda
功夫panda

用ajax上传文件

//上传文件,在action中
 public void loadfile(){
  try{
   JSONObject json = new JSONObject();
   String gameName = g_packagepath.substring(g_packagepath.lastIndexOf("."));
   String newgameName = request.getRealPath("/")+"/ifreame/resource/images/"+g_gamename+ gameName;
   //路径格式转换统一格式
   File newgame_name = new File(newgameName);
   String newFileGameName = newgame_name.getCanonicalPath();
   //调用文件上传工具类
   if (UploadUtils.uploadFile(g_packagepath, newFileGameName, 1024*1024)) {
    // success
    request.setAttribute("msg", "图片上传成功!");
   } else {
    // fail
    request.setAttribute("msg", "图片上传失败!");
   }
   //页面上获取值时给json  put值
   json.put("newFileGameName", newFileGameName);
   response.getWriter().print(json);
   }catch(Exception e){
    e.printStackTrace();
   }
 }

 

界面上

$('#loadfile').click(
     function() {

$.ajax( {
       type : "post",
       url : "${pageContext.request.contextPath}/gamemanage!loadfile.action",
       data : {
        'g_gamename'  : $('#g_gamename').val(),
        'g_packagepath' : $('#g_packagepath').val()
       },
       dataType : "json",
       success : function(msg) {
       alert(msg.newFileGameName)
         $('#hiddengame').val(msg.newFileGameName);
        
       }
     });

   });

 

 

 

 

//界面中的demo

<tr>
     <td id="packagepath">游戏文件路径:</td>
     <td><input type="file"  name="g_packagepath" id="g_packagepath" />
     </td>
     
     <td><input type="button" value="上传文件" id="loadfile"/>
          </td>
     
    </tr>
    
    <tr>
    <td>
    <input type="text" id="hiddengame"  name="hiddengame" /></td>
    </tr>

1
小编辑
小编辑
jquery.form 可实现无刷新上传文件的:)
0
yak
yak
用iframe
0
Liuxd
Liuxd
swfupload是个好东西,可以满足你各种奇怪和不奇怪的上传需求。
0
明月惊鹊
明月惊鹊
其实,osc是个好地方,可以满足你各种奇怪和不奇怪的技术需求。
返回顶部
顶部