retrograde
retrograde

Reputation: 2979

Append var to FormData

I am using CKEditor as a WYSIWYG editor for an internal email system that I'm building, which requires me to get the data from from the textarea input like this:

var message = CKEDITOR.instances.messageArea.getData();

I am also allowing users to send attachments and I am sending the files to the server via the HTML5 FormData.

//create form variable
var form = $('#sendIndividualEmail')[0];
var formData = new FormData(form);

I have tried to append the the message variable to the formData, but it seems that formData only allows form fields to be appended.

Is there alternative way to append a var to FormData if it isn't a form field? If not, is there another way to get the message variable to the server with the formData?

ajax code:

request = $.ajax({
            url: baseURL+'/sendIndividualMessage',
            type: "post",
            data: formData,
            mimeType: "multipart/form-data",
            dataType: json,
            contentType: false, //required for formData
            cache: false,
            processData: false, //require for formData
        });

Upvotes: 2

Views: 2361

Answers (1)

Captain
Captain

Reputation: 677

You can append data to a FormData like that :

formData.append('message', message);

It doesn't need to be a form field. To debug FormData, you have to post the data.

MDN FormData.append() Reference

Have a look here : FormData.append("key", "value") is not working

Upvotes: 2

Related Questions