2016-08-04 151 views
0

我想用ajax发送额外的数据。我使用(表单).serializeArray()并添加了额外的数据。当我试图通过ajax发送它时,警报显示我没有将额外数据添加到序列化数组中。 这是我的代码:data.push不能与ajax一起工作

$('#addrows').on('click',function(e){ 


     var imgsrc= document.getElementById("imgz").src; 
     alert(imgsrc); 



    e.preventDefault(); 

    var data_save = $('form').serializeArray(); 

     data_save.push({ name: "imgname", value: imgsrc}); 


    $.ajax({ 
    url:"add.php", 
    cache:false, 
    method:"POST", 
    data:data_save, 

    success: function(data_save){ 

     var obj = JSON.parse(data_save); 
     console.log(obj); 
t.row.add(obj).draw(false); 
alert(obj); 


    } 

}); 
     }); 
     }); 

回答

0

我已经测试上面的例子中,一切都在那边似乎罚款。我也没有看到警告后:

var data_save = $('form').serializeArray(); 

data_save.push({ name: "imgname", value: imgsrc}); 

所以尝试添加:

console.log(data_save); 

,并检查回复或给我,它们会在开发者控制台传送的数据的屏幕截图。

+0

是的,我得到了同样的结果,但是当我把它发送到“add.php”imgsrc没有被添加。 – Mira

+0

我试图使用var t = JSON.stringify(data_save);和IM我的PHP文件json_decode([“$ _ REQUEST [”t“],真)....但它不工作.... – Mira

+1

很高兴知道你能够使其工作。 –

0

我不知道什么是错,但突然它的工作。