我有一个表单,我想通过Ajax提交,但是,它的一部分包含一个数组。我很难通过Ajax传递这个数组。下面是我的Ajax的一个例子,我通常会在数据之后传递表单条目数据(一个:$('#one')。val())我会有一行每个领域都有这个。
现在我有了一组新的字段,其中信息需要作为数组传递。我尝试过使用序列化和 formData - var fd = new FormData("#form")
- 到目前为止,这个数组已经通过,或者表单中没有任何内容通过,或只是数组没有通过。
任何人都可以指出我正确的方向吗?
$("#form").submit(
function() {
if (confirm('Are you sure you want to edit this?')) {
$("#formMessages").removeClass().addClass('alert alert-info').html(
'<img src="images/loading.gif" /> Validating....').fadeIn(500);
$.ajax({
url: $("#form").attr('action'),
dataType: 'json',
type: 'POST',
data: {
one: $('#one').val(),
two: $('#two').val()
},
success: function(data){
//success stuff would be here
}
});
}
return false;
});
感谢。
答案 0 :(得分:0)
你试过这个:
用JavaScript编写:
your_array = JSON.stringify(your_array);
在PHP中:
$array = json_encode($_POST['array']);
答案 1 :(得分:0)
您可以尝试使用:
var dataSend = {};
dataSend['one'] = $('#one').val();
dataSend['two'] = $('#two').val();
dataSend['three'] = $('#three').val();
然后在ajax
data: {dataSend:dataSend}
您可以使用json:
在php中收集数据$json = json_encode($_POST['dataSend']);
$json = json_decode($json);
print_r($json);
查看输出。
修改强>
您可以在php中收集数据,如下所示:
$one = $json->{'one'};
$two = $json->{'two'};