问题
I am trying to pass a PHP variable to JQUERY. I tried the following script but the var 'id' is not been passed to upload_avatar.php. Guess i am making some mistake. Can anyone help me.
$(document).ready(function (e) {
$("#uploadForm").on('submit',(function(e) {
e.preventDefault();
var id = '<?php echo $id; ?>';
$.ajax({
url: "upload_avatar.php",
type: "POST",
data: new FormData(this)
contentType: false,
cache: false,
processData:false,
success: function(data)
{
$("#targetLayer").html(data);
},
error: function()
{
}
});
}));
});
回答1:
Append your id in formData as below
$(document).ready(function (e) {
$("#uploadForm").on('submit',(function(e) {
e.preventDefault();
var id = '<?php echo $id; ?>';
var frmData = new FormData(this);
frmData.append('id', id);
$.ajax({
url: "upload_avatar.php",
type: "POST",
data: frmData ,
contentType: false,
cache: false,
processData:false,
success: function(data)
{
$("#targetLayer").html(data);
},
error: function()
{
}
});
}));
});
回答2:
change your code to:
$(document).ready(function (e) {
$("#uploadForm").on('submit',(function(e) {
e.preventDefault();
var id = '<?php echo $id; ?>';
var myFormData = new FormData();
myFormData.append('id', id);
$.ajax({
url: "upload_avatar.php",
contentType: false,
cache: false,
processData:false,
data: myFormData,
dataType: "json",
success: function(data)
{
$("#targetLayer").html(data);
},
error: function()
{
}
});
}));
});
来源:https://stackoverflow.com/questions/58269241/pass-php-var-to-jquery