使用jQuery AJAX发送JSON

时间:2011-08-09 11:34:30

标签: php javascript jquery ajax json

为什么这个PHP不能获取我的链接数组?

function check_links() {

        $matches = $this->input->get('links');


        if($matches == true) {
            echo json_encode('matches is true');
        } else {
            echo json_encode('matches is false');
        } 


        //echo json_encode($matches);

    }

JS

        var linksStr = $("#links").val();
        var matches = linksStr.match(/\bhttps?:\/\/[^\s]+/gi);

        alert(matches.length);

        for(var i = 0; i < matches.length; i++) {
            alert(matches[i]);
        }

        var links = JSON.stringify(matches);

        $.ajax({
        type: 'GET',
        dataType: 'json',
        cache: false,
        data: links,
        url: 'publishlinks/check_links',
        success:                    
            function(response) {

                alert(response);

            }


        })

1 个答案:

答案 0 :(得分:2)

我对这里想要实现的目标感到困惑 但是需要将JSON.stringify分配给值

var links = JSON.stringify(matches);

喜欢链接

var links = 'links='+JSON.stringify(matches);

然后在你的函数中,$matches现在应该包含你的json编码链接 所以你可以使用它,

function check_links() {
  $matches = $this->input->get('links');
  ...
  $matches = json_decode($matches); // do stuff
  ....