jQuery从php json_encode获取数组

the*_*bee 3 javascript php jquery json

我在php中创建了一个数组.我只是想在jquery中获取数据

这是support.php中的数组:

$postData = array(
        "error" => $error,
        "successInfo" => $successInfo,
        "email" => $_POST["email"],
        "subject" => $_POST["subject"],
        "description" => $_POST["description"],
);

echo json_encode($postData);
Run Code Online (Sandbox Code Playgroud)

我应该使用jquery.getJSON在javascript端做什么?

提前致谢!

Use*_*407 7

这很大程度上取决于你想用它来做什么,但这是访问元素键的基本方法.您只需对每个元素键使用点运算符:"data.email"等.

$.ajax({
    type: 'POST',
    url: 'support.php',
    success: function(result) {
        var data = jQuery.parseJSON(result);
        alert(data.email);
    }
});
Run Code Online (Sandbox Code Playgroud)

插入HTML元素:

我用id ="landingPad"创建了一个div并用以下方法换出了警告线:

$('#landingPad').html(data.email);
Run Code Online (Sandbox Code Playgroud)

列出收到的数据清单:

然后我将我的div改为无序列表:

<ul id="landingPad"></ul>
Run Code Online (Sandbox Code Playgroud)

更改成功函数后,它列出了从support.php收到的所有数据:

$(document).ready(function(){
    $.ajax({
        type: 'POST',
        url: 'support.php',
        success: function(result) {
            var data = jQuery.parseJSON(result);
            $.each(data, function(index, value) {
                $("#landingPad").append("<li>" + value + "</li>");
            });
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

使用AJAX数据创建表单元素:

接下来,我创建了以下表单:

<form name="http://example.com/edit_my_values" action="post">
    <div  id="landingPad"></div>
    <input type="submit" name="go" value="Edit Values"/>
</form>
Run Code Online (Sandbox Code Playgroud)

然后通过编辑AJAX,我使用收到的值动态创建了一个表单:

$(document).ready(function(){
    $.ajax({
        type: 'POST',
        url: 'support.php',
        success: function(result) {
            var data = jQuery.parseJSON(result);
            $.each(data, function(index, value) {
                $("#landingPad").append('<input type="input" name="'+index+'" value="'+value+'"/><br/>');
            });
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

将数据插入现有表格:

给出以下形式:

<form name="http://example.com/edit_my_values" action="post">
    <label for="error">Error </label><input type="text" name="error"/><br/>
    <label for="successInfo">Success </label><input type="text" name="successInfo"/><br/>
    <label for="email">Email </label><input type="text" name="email"/><br/>
    <label for="subject">Subject </label><input type="text" name="subject"/><br/>
    <label for="description">Description </label><input type="text" name="description"/><br/>
</form>
Run Code Online (Sandbox Code Playgroud)

您可以使用以下AJAX数据填充字段:

$(document).ready(function(){
    $.ajax({
        type: 'POST',
        url: 'support.php',
        success: function(result) {
            var data = jQuery.parseJSON(result);
            $.each(data, function(index, value) {
                $('[name='+index+']').val(value);
            });
        }
    });
});
Run Code Online (Sandbox Code Playgroud)