【发布时间】:2018-12-24 16:49:04
【问题描述】:
我有一个用 php 编码的对话框。提交时,我将数据发送回对话框以通过 ajax 存储(我不希望对话框关闭)。这主要是有效的,但发布数据的格式不是我想要的。这是ajax代码
$('#but1').click(function() {
var apply_to = $("input[name='group-apply']:checked").val();
var el = document.getElementById('multi-selector');
var selected = GetSelectValues(el);
var data = [];
data[0] = 'apply-to:'+ apply_to;
data[1] = 'selected:' + selected;
data = {data};
$.ajax({
url : "example.php",
type: "POST",
data : data,
success:function(result){
$("#form-container").html(result);
}
});
});
上面运行时,对话框中的php会显示这个
Array
(
[data] => Array
(
[0] => apply-to:Include
[1] => selected:8,9,5,1
)
)
为了使用上述内容,我需要像这样访问它,然后分解它以获取值。
$_POST['data'][0]
我希望数据像这样显示
Array
(
[0] => apply-to:Include
[1] => selected:8,9,5,1
)
或者,理想情况下:
Array
(
[apply-to] => Include
[selected] => 8,9,5,1
)
如果可能的话,谁能解释一下如何做到这一点?
【问题讨论】:
-
只需将您的
var data = [];和下面的 3 行替换为var data = {apply_to: apply_to, selected: selected}。