1

我正在尝试让 tag-it jquery 插件与 json 字符串一起使用。目前我正在从数据库中获取我的值,如下所示:

$query = sprintf(
            'SELECT
                t.tag
            FROM
                tags AS t
            ');

    $row_set= array();

    if($result = mysqli_query($db, $query))
    {
        // fetch data
        while ($row = mysqli_fetch_assoc($result))
        {
            $row_set[] = $row;
        }

        // set the output
        echo json_encode($row_set);
    }

在 AJAX 中调用时会给出以下输出:

[{"tag":"test"},{"tag":"tests"}]

但我必须以以下格式输出 JSON 字符串:

["android-intent","animate","architecture","artificial-intelligence","attributes"]

我怎样才能做到这一点?

4

2 回答 2

3

当您使用row_set[] = $row;最有可能$row看起来像这样$row['tag'] = 'test 时,这就是您使用 JSON 对象格式的原因;

尝试

  $row_set[] = $row['tag']; 

确保您还将 seound 参数设置trueJSON始终返回数组

   json_encode($row_set,true);

这会将它作为数组而不是对象返回

于 2012-04-28T11:22:18.260 回答
2

这应该解决它,通过将字符串添加到您的箭头而不是将数组添加到您的数组中。

$row_set[] = $row[0]; or $row_set[] = $row['tag'];
于 2012-04-28T11:23:58.020 回答