2014-09-19 9 views
0

Я использую загрузчик файлов ajax/php. Я добавил дополнительные поля формы. Поля скрытой формы, которые имеют объявленные значения, передаются без проблем, но любое текстовое поле с введенными пользователем значениями пуст. Я проверил с httpfox, и все текстовые значения ввода пустые в форме отправки там. Возможно, это потому, что загрузчик файлов ajax автоматически отправляет форму после загрузки файла каким-то образом, предотвращая введенные значения после загрузки браузера? не совсем уверен здесь.форма сериализации оставляет текстовые входы пустым

здесь моя форма:

<link href="css/uploadfilemulti.css" rel="stylesheet"> 
    <script src="js/jquery-1.8.0.min.js"></script> 
    <script src="js/jquery.fileuploadmulti.min.js"></script> 

<form id="uploadform" action="#" method="POST" enctype="multipart/form-data"> 
    <fieldset> 
    <legend>Some Info</legend> 
    <ol><li> 
    <label for="title">NAME:</label> 
    <input name="title" type="text" /> 
    </li><li> 
    <label for="ink">SALES REP:</label> 
    <input id="ink" name="ink" type="text" value="" /><p class="small">Your sales rep.</p></li><li> 
    <label for="paper">TELEPHONE NUMBER:</label> 
    <input id="paper" name="paper" type="text" value="" /><p class="small">How can we reach you?</p></li> 
    <li><label for="description">DESCRIPTION:</label> 
    <textarea id="description" name="description" value="" /></textarea> 
    </li><input type="hidden" value="<?php echo $mn; ?>" name="member_name" id="member_name" /><input type="hidden" value="<?php echo $row['ship_city']; ?>" name="ship_city" id="ship_city" /> 
    <input type="hidden" value="<?php echo $row['ship_state']; ?>" name="ship_state" id="ship_state" /> 
    <input type="hidden" value="<?php echo $company; ?>" name="ship_company" id="ship_company" /> 
    <input type="hidden" value="<?php echo $row['member_id']; ?>" name="member_id" id="member_id" /></ol></fieldset></form> 

вот Аякс обработчик:

<div id="mulitplefileuploader">Upload</div> 

<div id="status"></div> 
<script> 

$(document).ready(function() 
{ 

var theForm = $('#uploadform').serialize(); 
//$.post('url', formData); 
var settings = { 
    url: "pruploadonly_do.php", 
    method: "POST", 
    allowedTypes: "jpg,png,gif,doc,pdf,zip,psd,ai,eps,jpeg,cdr,tif,JPG", 
    fileName: "myfile", 
    multiple: true, 
    formData: theForm, 
    onSuccess:function(files,data,xhr) 
    { 
     $("#status").html("<font color='green'>Upload is success</font>"); 

    }, 
    afterUploadAll:function() 
    { 
     alert("all images uploaded!!"); 
    }, 
    onError: function(files,status,errMsg) 
    {  
     $("#status").html("<font color='red'>Upload is Failed</font>"); 
    } 
} 
$("#mulitplefileuploader").uploadFile(settings); 

}); 
</script> 
+0

Где я могу найти документацию для JS/jquery.fileuploadmulti.min.js? Вы действительно используете тег '' и стиль с помощью HTML? – PHPglue

+0

@PHPglue http://www.sanwebe.com/2012/06/ajax-file-upload-with-php-and-jquery <- ссылка на файлuploadmulti.min.js docs. И тег был частью этого файла. Я этого не писал. –

+0

@PHPglue извините. неправильная ссылка .. его здесь: http://hayageek.com/jquery-multiple-file-upload/ –

ответ

0

Не может сделать это с помощью этого плагина. Этот плагин построен для настройки, как только загружается DOM. вот что создает кнопку загрузки. Поэтому к тому времени, когда вы добавите данные формы, это не добавится в конфигурацию, которая отправляется через AJAX.

Вам нужно использовать другой код, как первое звено вы дали выше: http://www.sanwebe.com/2012/06/ajax-file-upload-with-php-and-jquery

+0

Я полагаю, что это была проблема. Однако в любое время, когда я добавляю функцию javascript в javascript, она не будет отображать кнопку загрузки. Я думаю, что это что-то в файле js. вот он: https://rawgithub.com/hayageek/jquery-upload-file/master/js/jquery.uploadfile.min.js –

+0

здесь не сведено к минимуму .. https://rawgit.com/hayageek/jquery -upload-file/master/js/jquery.uploadfile.js –

+0

да, я нашел это. проверяя это сейчас. – manishie

Смежные вопросы