0
        <script type="text/javascript">  
            $(function() {
$('#jo').flexbox({  
        "results": [  
            { "id": "1", "name": "002155" },  
            { "id": "2", "name": "002155" },
            { "id": "3", "name": "asdasdasd" }
        ]}, 
    {  
showArrow: false  
});
            });  
        </script>

顶部的代码是 flexbox 建议的记录,例如 ill type 00它有两个建议 002155 和 002155,但问题是建议这个词的结果是静态的,我读了一些来自这个站点的代码他们链接一个 php 页面用作数据库。这是样本...

$("#suggest").flexbox('back/search.php', {

上面这段代码来自:jquery flexbox ? 我尝试做一些替代方案,以便能够使用 mysql 作为建议这个词的结果;

        <script type="text/javascript">  
            $(function() {
$('#jo').flexbox({  
        "results": [  
    <?php
        $con = mysql_connect("localhost","root","");

        mysql_select_db("accom");
        $query = mysql_query("select * from myproject");
            while($i = mysql_fetch_array($query))
            {
                $ii++;
                print"{ id : ".$ii.", name: ".$i[per_name]." },";       
            }
    ?>
        ]}, 
    {  
showArrow: false  
});
            });  
        </script>

但它不起作用;-(,请帮帮我,让建议这个词的来源来自一个sql查询,谢谢你们..

顺便说一下,这是我的桌子

myproject
per_id(int 100)auto_increment
per_name(varchar 100)
4

2 回答 2

0

生成的 json 无效。

事实上,参数不包括第二个参数(因为你用'}'关闭对象)并且名称值是字符串,所以你可能需要添加引号。

    <script type="text/javascript">  
        $(function() {
            $('#jo').flexbox({  
                "results": [  
                    <?php
                        $con = mysql_connect("localhost","root","");
                        mysql_select_db("accom");
                        $query = mysql_query("select * from myproject");
                        while($i = mysql_fetch_array($query))
                        {
                            $ii++;
                            print"{ id : ".$ii.", name: '".$i[per_name]."' },";       
                        }
                    ?>
                ], 
                showArrow: false  
             });
        });  
        </script>

请注意,如果名称包含引号字符,您应该需要对名称值进行分隔。

于 2013-02-09T02:18:28.370 回答
0

最佳做法是进行 php 调用,json 获取您需要的数据然后加载它。

<script type="text/javascript">  
$(function() {
$.getJSON("search.php", function(data){
    $('#jo').flexbox({  
        "results": data, 
        showArrow: false  
    });
}); 
});  
</script>

然后在您的 search.php 中执行以下操作:

$con = mysql_connect("localhost","root","");
mysql_select_db("accom");
$query = mysql_query("select * from myproject");
$data = array();
while($i = mysql_fetch_array($query))
{
    $data[] = array('id' => $ii, 'name' => $i[per_name])       
}
echo json_encode($data); die();

所以现在当页面加载完成时,它会调用你的 php 搜索函数,以 json 格式获取数据,然后你只需将其分配给你的 flexbox。

于 2013-02-11T14:44:24.513 回答