ホームページ >ウェブフロントエンド >jsチュートリアル >Ajax Submit を実装して、ファイルをアップロードするときにユーザーにプロンプ​​トを表示する

Ajax Submit を実装して、ファイルをアップロードするときにユーザーにプロンプ​​トを表示する

php中世界最好的语言
php中世界最好的语言オリジナル
2018-03-31 17:28:061472ブラウズ

今回は、ファイルをアップロードするときにユーザーにプロンプ​​トを表示する Ajax Submit の実装方法を紹介します。注意点は何ですか? 以下は実際的なケースです。

springmvc backend:

@RequestMapping(value="scoreFileUpload",produces = "text/html; charset=utf-8") 
  @ResponseBody 
  public String upload(HttpSession session,@RequestParam("file1") MultipartFile file,@RequestParam("paperId") String paperId,HttpServletRequest request) { 
  //获取登录人员的id 
  Integer userId = (Integer) session.getAttribute(BaseConstant.SESSION_UERID_KEY); 
  JSONObject json = new JSONObject(); 
  if (request instanceof MultipartHttpServletRequest) { 
    //获取上传文件的文件名 
      String fileName = file.getOriginalFilename(); 
      String subfix = FileUtils.getFileExtend(fileName); 
    } 
return ""; 
  }

js: end

$('#fileForm').submit(function() { 
    var _businessDetailId = $("#businessDetailId").val(); 
    var _paperId = $("#paperId").val(); 
    var url = "scoreFileUpload?paperId="+_paperId+"&businessDetailId="+_businessDetailId; 
    var optionss = {  
         dataType:"text/html",  
         type:'post',  
         url: url,  
      //  beforeSubmit:showRequest,  
         complete:showResponse, 
         clearForm:false, 
        timeout:  3000000  
    }; 
    //提交表单 
    $(this).ajaxSubmit(optionss); 
    // !!! Important !!! 
    // 为了防止普通浏览器进行表单提交和产生页面导航(防止页面刷新?)返回false 
    return false; 
  });<pre name="code" class="javascript">function showResponse(data) { 
  data = JSON.parse(data.responseText); 
  if(data.type != null) { 
  } 
}
返された型が json の場合、この問題は IE でのみ発生しますが、Chrome と Firefox では正常です。この問題を解決するには、text/html のみを返すことができます。

バックエンドによって返される型は json ではなく text/html であるため、返された

type
を json 型に変換します。 この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。

推奨読書:

Ajax+Spring によるファイルアップロードの実装


Ajax を使用してデータを動的にロードする方法

以上がAjax Submit を実装して、ファイルをアップロードするときにユーザーにプロンプ​​トを表示するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。