1

私はselect2を使用し、結果を次のようにフォーマットしたい

名前、最初の。

$("#id").select2({
    minimumInputLength : 0,
    allowClear: true,
    ajax : {
        url : "Form/page.php",
        dataType : 'json',
        data : function (term, page) {
            return {
                q : term
            };
        },
        results: function (data, page) {
            return { results : data.ex};
        },
        formatResult :  function formatResult(ex) {
            return '<b>' + ex.name + '</b>';
        }
    }

});

私のphpファイルのような

    while($r=mysql_fetch_array($m)) {
        $rows['id']=$r['id'];
        $rows['text']=$r['name'];
        $rows['first']=", ". $r['first'];
        $rows2[]=$rows;
    }
    print json_encode($rows2);

どうすればそれができますか、ありがとう

4

2 に答える 2

1

PHPコードは次のようにする必要があると思います:

while($r=mysql_fetch_array($m)) {
    $rows['id']=$r['id'];
    $rows['name']=$r['name'];
    $rows['first']=$r['first'];
    $rows2[]=$rows;
}
print json_encode($rows2);

したがって、id、name、および first を含む json オブジェクトの配列を渡します。

formatResultの戻り値を次のように変更します。

return '<b>' + ex.name + '</b>, ' + ex.first;
于 2013-04-25T16:04:46.207 に答える