Про отправку файлов в FormLister

Здравствуйте!
использовал последний FormLister и Evo 1.4.12
Брал пример из docs.evo.im/04_extras/formlister/500_examples/003_otpravka_fajlov.html Но при отправке форма пишет, что «файл не выбран» и сообщение об ошибке «Приложите документ».
Форма реализована в модальном окне.
В консоли ошибок нет. Помогите пожалуйста рабочим примером

6 комментариев

avatar
Хотелось бы увидеть ваш код формы
avatar
Сорри — сейчас увидел ответ. Вот код формы
++++++++++++++++
вот код чанка «letter» с формой
[!FormLister?
&formid=`Form3`
&rules=`{
"name":{
    "required":"Обязательно введите имя"
},
"phone":{
    "required":"Обязательно введите номер телефона",
    "phone":"Введите номер правильно"
},	
"special":{
    "maxLength":{
        "params":0
    }
},
"agree":{
    "required":"Вы не можете отправить обращение, если не согласны с правилами"
}
}`
&attachments=`first`
&fileRules=`{
"first":{
    "required":"Приложите документ",
    "allowed":{
        "params": [ ["doc","docx","pdf"] ],
        "message": "Разрешены только документы Word и Pdf"
    },
    "maxSize" : {
        "params": 1024,
        "message": "Размер файла не должен превышать 1Мб"
    }
}
}`
&formTpl=`@CODE:
       <form method="post" name="Form3" id="Form3">
		<div class="row">
                <input type="hidden" name="formid" value="Form3">
				<input name="special" class="special" type="text" placeholder="Спец" value="[+special.value+]">
			<div class="col-12">
                <div class="form-group[+name2.errorClass+][+name2.requiredClass+]">
					[+name2.error+]
                    <input type="text" class="input-sm form-full" id="name2" placeholder="Имя *" name="name2" value="[+name2.value+]">                        
                </div>				
                <div class="form-group[+phone2.errorClass+][+phone2.requiredClass+]">
					[+phone2.error+]
                        <input type="text" class="input-sm form-full phnx" id="phone2" placeholder="+7 (XXX) XXX-XX-XX *" name="phone2" value="[+phone2.value+]">
                </div>
			</div>
			<div class="col-12">	
				<div class="form-group[+first.errorClass+][+first.requiredClass+]">
                    <label for="first" class="control-label">* Приложите документ (Word или Pdf)</label>
                    <div class="col-sm-10">
                        <input type="file" class="form-control" id="first" name="first">
                        [+first.error+]
                    </div>
                </div>
			</div>
			<div class="col-12">	
				<div class="checkbox[+agree.requiredClass+]">
					 [+agree.error+]
                  <label>
                    <input type="checkbox" name="agree" value="Да" [+c.agree.Да+]>
                    Я согласен с <a href="[~30~]" target="_blank">правилами обработки персональных данных</a>
                  </label>                   
                </div>
                <div class="form-group">
                    <button type="submit" class="btn btn-md btn-black form-full">Отправить</button>
                </div>
				
			</div>            
        </div>
	</form>`
&to=моя почта`
&errorClass=` has-error`
&requiredClass=` has-warning`
&reportTpl=`@CODE:
<p>Имя: [+name2.value+]</p>
<p>Телефон: [+phone2.value+]</p>
<p>Документы:[+first.value+]</p>
<p>Доп.:[+userfile.value+]
<p>Вложения: [+attachments.value+]</p>
`&subject=`Заказ обратного звонка с [(site_name)]`
&messagesOuterTpl=`@CODE:<div class="alert alert-danger" role="alert">[+messages+]</div>`
&errorTpl=`@CODE:<span class="help-block">[+message+]</span>`
!]			

 

это сама форма и у нее есть обертка — вызов в модальном окне
<div class="modal fade" id="letter" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
	  <div class="modal-dialog" role="document">
		<div class="modal-content">
		  <div class="modal-header">
			<h5 class="modal-title" id="exampleModalLabel">Отправьте документы</h5>
			<button type="button" class="close" data-dismiss="modal" aria-label="Close">
			  <span aria-hidden="true">×</span>
			</button>
		  </div>
		  <div id="myModal_form-lt" class="modal-body">
			{{letter}}
		  </div>		  
		</div>
	  </div>
	</div>
<script>
    $(function(){
        $(document).on("submit","#Form3",function(e){
            e.preventDefault();
            var m_method=$(this).attr('method');
            var m_action=$(this).attr('action');
            var m_data=$(this).serialize();
            $.ajax({
                type: m_method,
                url: m_action,
                data: m_data,
                resetForm: 'true',
                success: function(result){
                    var data = $(result).find("#myModal_form-lt").html();
                    $("#myModal_form-lt").html(data);
                }
            });
        });
    });
</script>
avatar

"name2":{
    "required":"Обязательно введите имя"
},
"phone2":{

<form enctype="multipart/form-data" method="post" id="Form3">


var m_data=new FormData(this);
$.ajax({
    processData: false,
    contentType: false,
avatar
СПАСИБИЩЕ!!!
name2 и phone2 уже стояло в тексте — здесь не исправил
а вот эта волшебная строчка с
var m_data=new FormData(this);
$.ajax({
    processData: false,
    contentType: false,

решила все проблемы.
Коты всех мастей — это сила :)
avatar
&attachments= `tvname`

Такое есть?
avatar
Спасибо за ответ!
да есть этот код. И пробовал весь код из примера брать — все-равно не получилось.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.