Jquery 使用$.ajax发送多个数据-失败
我有一个可排序的有序列表,并对其使用nestedSortable。 它是有效的。 但是现在我想向ajax请求添加一些数据,但是失败了Jquery 使用$.ajax发送多个数据-失败,jquery,ajax,arrays,object,serialization,Jquery,Ajax,Arrays,Object,Serialization,我有一个可排序的有序列表,并对其使用nestedSortable。 它是有效的。 但是现在我想向ajax请求添加一些数据,但是失败了 var sorted = $('ol.sortable').nestedSortable("serialize"); var dataUrl = {}; $( "ol.sortable li" ).each(function( index ) { //console.log( $( this ).attr("id").replace(/\D/g, '')
var sorted = $('ol.sortable').nestedSortable("serialize");
var dataUrl = {};
$( "ol.sortable li" ).each(function( index ) {
//console.log( $( this ).attr("id").replace(/\D/g, '') + ": " + $( this ).attr("data-url") );
dataUrl[$( this ).attr("id").replace(/\D/g, '')] = $( this ).attr("data-url");
});
$.ajax({
type: "POST",
data: {sort: sorted, dataurl: dataUrl},
现在的问题是,当我尝试使用PHP foreach循环时,第一次数据“排序”失败。
该数据现在是一个字符串。
第二部分“dataurl”是一个对象,我可以使用foreach对其进行迭代
我什么时候可以更改订单
data: {dataurl: dataUrl, sort: sorted}
然后突然,我的dataurl变成了一个字符串,“sort”变成了一个对象
我还尝试设置数据类型:JSON,但这并没有改变任何事情
我做错什么了吗?这是一个bug吗?以下是我的方法:
var sorted = $('ol.sortable').nestedSortable("serialize");
var dataUrl = {};
$( "ol.sortable li" ).each(function( index ) {
//console.log( $( this ).attr("id").replace(/\D/g, '') + ": " + $( this ).attr("data-url") );
dataUrl[$( this ).attr("id").replace(/\D/g, '')] = $( this ).attr("data-url");
});
var sendedData = {};
sendedData.sort = sorted;
sendedData.dataurl = dataUrl;
$.ajax({
url: 'myFile.php',
type: 'POST',
dataType: 'json',
data: sendedData,
success: function(result) {
// Add your own logic here
}
});