У меня есть функция почты в плагине для администратора WordPress, и я хочу иметь возможность динамически прикреплять файл и отправлять его по почте как вложение. Я использую метод ajax при выборе файла и должен загрузить, но я застрял. Посмотрите мой код.
HTML-код
<p class="email-from">
<label>From</label>
<span class="sep">:</span>
<span class="value">Casting Kids(office@castingkids.com.au)</span>
</p>
<p class="email-to">
<label>To</label>
<span class="sep">:</span>
<span class="value"><?=$child[0]->fname.' '.$child[0]->lname?></span>
<input type="hidden" class="email_address" value="<?=$child[0]->email?>">
</p>
<p class="email-subject">
<label>Subject</label>
<span class="sep">:</span>
<span class="value">
<input type="text" name="email_subject" placeholder="Subject...">
</span>
</p>
<div id="parent_mail">
<trix-editor placeholder="Type your email body ....."></trix-editor>
<div class="client-action">
<input type="submit" class="button button-primary" id="email_P" name="email_parent" value="Send Mail" >
<input type="file" name="files[]" id="email_file" multiple>
<label for="email_file">Attach File</label>
<input type="reset" class="button button-default" value="Discard">
<p style="display: none;" class="error_message"></p>
<p style="display: none;" class="success_message"></p>
</div>
</div>
</form>
</div>
Код Jquery
$("#email_file").on('change',function(e){
e.preventDefault();
var formData = new FormData("#mail_parent_form");
formData.append("action", "attach_file_parent");
console.log(formData);
$.ajax({
url: ajaxurl,
type: 'POST',
data: formData,
cache: false,
contentType: false,
processData: false,
success: function (data) {
}
});
})
Но в форме журнала консоли выдает пустые данные формы {}. Пожалуйста, помогите мне