从ajax序列化获取php中的特定值

时间:2013-07-18 10:20:06

标签: php ajax

具有输入字段和选择器的输入表单。希望输入字段和选择器值中的值与ajax传递到php文件并在php文件中处理特定值

部分HTML是这样的

<select name="record_date_selector[]" ...

<input type="text" name="record_date[]" ...

ajax就像这样

var values = $("form").serialize();
$.ajax({
type: 'POST',
url: '__popup-window_ajax.php',
data: { 'clickedId' : $(this).closest('td').attr('id'), 'Values' : values },
dataType: 'json',
});

使用php

echo json_encode($_POST['Values']);

得到这样的东西

record_date_selector%5B%5D=3&record_date%5B%5D=02.07.2013

我如何获得例如record_date_selector的价值?

尝试echo json_encode($_POST['record_date_selector']);但这种方式不正确

请咨询

2 个答案:

答案 0 :(得分:1)

对于此查询字符串:

record_date_selector%5B%5D=3&record_date%5B%5D=02.07.2013

您可以使用parse_str()函数转换为数组。

答案 1 :(得分:1)

您可以在php文件中使用它:

<?php
// Get 'Values' value and store as array in $output 
parse_str($_POST['Values'],$output);
// convert $output in json
 echo json_encode($output);
?>

并从像这样的ajax响应中获取值

response.your_input_name; //response.record_date_selector