【问题标题】:send only on file in the form with ajax仅以 ajax 形式发送文件
【发布时间】:2014-02-02 09:24:09
【问题描述】:

我有一个带有 10 个输入文件类型标记的表单。我只想将其中一个文件发送到带有 ajax 的服务器。在支持 formData 的现代浏览器中没有问题。我的问题是在不支持 formData 的旧浏览器中。我将此代码用于旧浏览器。 html表单

<form name="multiform" id="multiform" action="multi-form-submit.php" method="POST" enctype="multipart/form-data">
Image1 :<input type="file" name="photo1" /><br/>

图片2:
图 3:

javascript 代码

function getDoc(frame) {
     var doc = null;

     // IE8 cascading access check
     try {
         if (frame.contentWindow) {
             doc = frame.contentWindow.document;
         }
     } catch(err) {
     }

     if (doc) { // successful getting content
         return doc;
     }

     try { // simply checking may throw in ie8 under ssl or mismatched protocol
         doc = frame.contentDocument ? frame.contentDocument : frame.document;
     } catch(err) {
         // last attempt
         doc = frame.document;
     }
     return doc;
 }
$("#multiform").submit(function(e)
{
    var formObj = $(this);
    //var formURL = formObj.attr("action");
        var formURL="multi-form-submit.php";
var  iframeId = "unique" + (new Date().getTime());

        //create an empty iframe
        var iframe = $('<iframe src="javascript:false;" name="'+iframeId+'" />');

        //hide it
        iframe.hide();

        //set form target to iframe
        formObj.attr("target",iframeId);
        //Add iframe to body
        iframe.appendTo("body");
        iframe.load(function(e)
        {
            var doc = getDoc(iframe[0]);
            var docRoot = doc.body ? doc.body : doc.documentElement;
            var data = docRoot.innerHTML;
            alert(data);

        });

multi-form-submit.php 文件:

<?php
 move_uploaded_file($_FILES["photo"]["tmp_name"],
      "upload/" . $_FILES["photo"]["name"]);

?>

当用户选择 photo1 和 photo2 和 photo3 并单击提交时,我只想将 photo2 发送到服务器。我该怎么做?

【问题讨论】:

    标签: javascript jquery html ajax


    【解决方案1】:

    对于旧版浏览器,当表单包含中文、日文时,iframe 提交表单会产生乱码...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-17
      • 2012-04-12
      • 2014-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多