Reputation:
I have HTML elements like this:
<div id="element">
<ul>
<li>
<a href="#"> apple </a>
<a href="#"> banana </a>
</li>
</ul>
</div>
I'm trying to send this element
to a PHP page using AJAX. Here is my code:
var element;
element = $('#element').html();
$.ajax({
url:"save.php",
type:"POST",
dataType:"json",
// processData: false,
data:{element:element},
success: function(data){
console.log(data);
}
});
my save.php file
echo $element = $_POST['element']; // i'm getting {} object why?
In my PHP file i'm getting blank object
like this {}
why I don't know?
Question: how to get the HTML element in the PHP page ?
Upvotes: 1
Views: 75
Reputation: 6994
Try this....
var element;
element = $('#element').html();
$.ajax({
url:"save.php",
type:"POST",
dataType:"json",
// processData: false,
data:{'element':element},
success: function(data){
console.log(data);
}
});
dataType:"json",
Refers what type of data you want to back from server. So i think this is not major problem.
Your mistake is here
Replace
data:{element:element},
By
data:{'element':element'},
Upvotes: 1
Reputation: 96
As suggested by Sudharsan S in a comment:
$.ajax({
url:"save.php",
type:"POST",
dataType:"html",
// processData: false,
data:{element:element},
success: function(data){
console.log(data);
}
This should do the trick.
Upvotes: 1