Name :

After serializing data using jquery load method in codeigniter

Here is my code.

 <form id='user'>
   <label for="name">Name :</label>
   <input type="text" id="name" name="name"/>
   <label for="email">Email :</label>
   <input type="text" id="email" name="email"/>
   <input type="submit"/>
 </form>
 <div id="output"></div>

JQuery

$('#user').on('submit',function(event){
        event.preventDefault();
        var data=$(this).serialize();
        adddetails(data);
});
function adddetails(data){
        var url='http://localhost/projectname/index.php/users/adddat';
        $("#output").load(url,data,function(response,status){
        });
}

In the "user" controller

function adddat(){
    $name=$this->input->post('name');
    $email=$this->input->post('email');
    echo "name: ".$name." and email: ".$email;
}

Here, when I click on submit, the div is output as follows

name: and email:

Here I do not receive the name and email postal data. Can anyone suggest me an idea.

+4
source share
2 answers

The serialize method produces string output. to call POST you need to use a JSON object.

$('#user').on('submit',function(event){
        event.preventDefault();
        var data=formToJSON('#user');
        adddetails(data);
});
function adddetails(data){
        var url='http://localhost/projectname/index.php/users/adddat';
        $("#output").load(url,data,function(response,status){
        });
}


function formToJSON( selector )
{
     var form = {};
     $(selector).find(':input[name]:enabled').each( function() {
         var self = $(this);
         var name = self.attr('name');
         if (form[name]) {
            form[name] = form[name] + ',' + self.val();
         }
         else {
            form[name] = self.val();
         }
     });

     return form;
}

Credit Convert form data to javascript object using jQuery

+1
source

Using the jQuery Download Function ( JQuery API )

POST , ; , GET.

JQuery serialize

.serialize() URL.

, POST-, GET, , load, .

  $this->input->get('parameter_name')

: function addat($name, $email){, codeigniter GET.

+2

All Articles