php - 通过 AJAX 发送数组数据

标签 php jquery arrays ajax

我有以下问题。

每当检查复选框时,我都试图发送 ajax 调用。 checkbox 的值被发送到我的 PHP 文件,其中将检查数据库以获取该值的所有数据。

问题是,我想在页面上显示数据,但我不知道如何。

下面是我的代码:

HTML:

<input type="checkbox" name="category[]" id="1" value="1" /> <label for="1">Administratieve Sector</label><br />
<input type="checkbox" name="category[]" id="2" value="2" /> <label for="2">Bouw Sector</label><br />
<input type="checkbox" name="category[]" id="3" value="3" /> <label for="3">Financiele Sector</label><br />
<input type="checkbox" name="category[]" id="4" value="4" /> <label for="4">Gezondheidszorg Sector</label><br />
<input type="checkbox" name="category[]" id="5" value="5" /> <label for="5">Horeca- en toerisme Sector</label><br />

JQuery:

function calculate() {

    var arr = $.map($('input:checkbox:checked'), function(e, i) {
        return +e.value;
    });

    $.ajax({ 
        url: '/company/test.php',
        data: {key: arr, i: 1},
        type: 'post',
        success: function(output) {
            obj = JSON.parse(output);

            console.log(obj);
            // Don't know where to go next
        }
    });
}

calculate();

$("div[class='col-md-12'").delegate("input:checkbox[name='category[]']", 'click', calculate);

PHP:

<?php

require_once '../core/init.php';

$v = new Vacatures();

if(isset($_POST['key']) && isset($_POST['i']) && !empty($_POST['key'])) {

    $key = $_POST['key'];
    $i = $_POST['i'];

    $vacs = $v->getFiltered($key, $i);

    echo json_encode($v->data());
    exit();
}

require_once VIEW_ROOT . '/company/test_view.php';

更新(obj 的内容)

[Object]0: Objectcategory: "1"company: "c1"content: "test"foto: "test"id: "2"region: ""title: "Test"__proto__: Objectlength: 1__proto__: Array[0]

最佳答案

有点像

$('body').append('<div><ul id="output"></ul></div>');
obj.data.forEach(function(x) {
$('#output').append("<li>"+x+"</li>");
});

编辑:

  • 有错字
  • forEach 或 $.each 仅适用于 json 数组,因此您必须查看 obj 中的内容

关于php - 通过 AJAX 发送数组数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38037851/

相关文章:

javascript - Avada wordpress 网站的简单 CSS 或 JavaScript 加载屏幕,同时加载一个大型视频文件,该文件在页面加载完成后消失

javascript - 对象值未正确更新

python - 无法弄清楚如何内存子集函数

perl - 为什么在 Perl 中访问数组和散列元素时需要 $?

arrays - 如何解决函数中的 Go 数组大小

php - Sentry on Laravel 4. 无密码社交认证

php - CodeIgniter 网站上的错误 "too many connections"

php - html 联系表单无法识别 php 文件

javascript - 如何删除使用 jQuery.bind 创建的事件处理程序?

php - mysql 锁定问题