选择ajax内容

时间:2017-01-14 20:26:34

标签: javascript php jquery ajax

我无法解决这个问题的解决方案。问题的内容:

  

select2.full.js:4025 Uncaught TypeError:无法读取属性' slice'未定义的   
在DecoratedClass.HidePlaceholder.removePlaceholder(select2.full.js:4025)   
在DecoratedClass.removePlaceholder(select2.full.js:594)   
在DecoratedClass.HidePlaceholder.append(select2.full.js:4008)   
在DecoratedClass.append(select2.full.js:594)   
在Select2。 (select2.full.js:1025)   
在Select2.Observable.invoke(select2.full.js:651)   
在Select2.Observable.trigger(select2.full.js:641)   
在Select2.trigger(select2.full.js:5489)   
在select2.full.js:5348   
在Object.options.transport.self.trigger.message(select2.full.js:3482)

我做错了什么?



$(document).ready(function(){

$('#select2').select2({
               minimumInputLength:1,
			   width: '300px',
               placeholder:"Select Parent Menu",
                ajax: {
                    type:"get",
                    url: "../test/inc/ajax/ajaxlux.php",
                    dataType: 'json',
                    quietMillis: 100,
                    data: function(params) {
                        return {
                            query: params.term, //search term
                            page_limit: 10 // page size	
							
                        };
						console.log(data);
                    },

        results: function(data) {
                        var newData = [];
                        for ( var i = 0; i < data.length; i++ ) {
                            newData.push({
                                id: item.FormID  //id part present in data
                                , text: item.FormName  //string to be displayed
                            });
                        }
                        return { results: newData };
                    },

                }
            });
  });
&#13;
<select id="select2">

</select>';
&#13;
&#13;
&#13;

和ajaxlux.php:

    $sql = "
SELECT ".$prefix."product.product_id,".$prefix."product.product_name
FROM ".$prefix."product 
WHERE ".$prefix."product.product_name LIKE '%".$_GET['query']."%'
AND ".$prefix."product.product_active = '1'
ORDER BY product_name ASC  LIMIT 10 " ;

    $result= mysqli_query($link,$sql) or die(mysqli_error());       

     $json = [];
    while($row = mysqli_fetch_assoc($result)){   
         $json[] = array (
            'FormID' => $row['product_id'],
            'FormName' => $row['product_name'],

        );
    }
    echo json_encode($json, JSON_UNESCAPED_UNICODE ); 

}

我查看了互联网上的许多网站以及与我为其他人工作相同的代码。

1 个答案:

答案 0 :(得分:0)

这就是我必须设置我的工作方式:

        $('#select2').select2({
            minimumInputLength:1,
            width: '300px',
            placeholder:"Select Parent Menu",
            ajax: {
                type:"get",
                url: "../test/inc/ajax/ajaxlux.php",
                dataType: 'json',
                quietMillis: 100,
                data: function(params) {
                    return {
                        query: params.term, //search term
                        page_limit: 10 // page size 

                    };
                    console.log(data);
                },

                processResults:  function(data) {
                    newData =    $.map(data, function (ind, item ) {
                        item.id = item.FormID;
                        item.text = item.FormName;
                        return item;
                    } );

                    return { results: newData };
                },

            }
        });