I am trying to submit a form thru javascript on the fly (using jquery-form)
Is it possible to create 'FORM' update bunch of values in that 'FORM' using javascript without having HTML-form ?
I am trying to submit a form thru javascript on the fly (using jquery-form)
Is it possible to create 'FORM' update bunch of values in that 'FORM' using javascript without having HTML-form ?
I'm going to guess that what you're asking is 'Can I perform an HTTP POST without using an HTML form?' The answer is yes.
Check out jquery's $.post(). It would look something like this:
$.post(url, { value1: "foo", value2: "bar" } );
Where the variable names you're passing are value1/value2 with their corresponding values.
Here's the jquery reference: $.ajax
This code will create a form on the fly, populate it with the data passed in and submit it (as a regular HTTP POST). This should be what you need.
var postRequest = function (uri, data) {
data = data || {};
var form = $('<form method="post" class="js:hidden">').attr('action', uri);
$.each(data, function(name, value) {
var input = $('<input type="hidden">')
.attr('name', name)
.attr('value', value);
form.append(input);
});
$('body').append(form);
form.submit();
};
I think you mean one of the following two things:
Can I create a <form>
element using javascript?
A: Yes, you can.
Use jQuery DOM manipulation functions to do that.
Can I submit values to a server side script like a <form>
would?
A: Yes, you can.
Use jQuery Ajax functions to do so. More specifically, jQuery.post() is your friend.
jQuery form plugin can come in handy if you want to do something in between these two options.
Cheers!
You can post all the values in the form through
$.ajax({url: XXX, data: { formField1: "value" }})