如何使用jquery mobile将页面幻灯片添加到动态创建的列表中


How do you to add page slide to a dynamic created list using jquery mobile?

这是我填充listview的html。我有从php脚本抓取的链接。我将把页面滑动功能在点击事件。它不允许我在脚本

中添加html
   <div data-role="content">
<script type="text/javascript">
                            $(document).on("pagebeforeshow", "#index1", function() {
                                $(function(){
                                    var items="";
                                    $.getJSON("check-events.php",function(data){
                                    $.each(data,function(index,item) 
                                    {
                                    items+="<li><a href="+item.col1+"?eventid="+item.id+">"+item.col2+"<p></p><p>"+item.col3+"</p></li>";
                                     });



                                    $("#contacts").append(items); 
                                     $("#contacts").listview("refresh");
                                    });
                                });
                            });  
                        </script>
            <div data-role="fieldcontain">
                        <ul id="contacts" data-role="listview" data-divider-theme="b" data-inset="true">
                     <li data-role="list-divider" role="heading">
                 List view
                </li> 
            </ul>
            </div>

我该在哪里添加这段代码?当我像这样添加它时,它一直产生错误

items+="<li><a href="+item.col1+"?eventid="+item.id+" data-transition="slide">"+item.col2+"<p></p><p>"+item.col3+"</p></li>";

有什么想法

工作方案php

$data = array();
        while($rowa = mysql_fetch_array($a, MYSQL_ASSOC)) 
            { 
            $row_array['id'] = $rowa['eventid'];
            $row_array['col1'] = "index.html";
            $row_array['col2'] = $rowa['eventname'];
            $row_array['col3'] = date("D jS F Y",strtotime($rowa[enddate]));
            $row_array['col4'] = "slide";
            array_push($data,$row_array);
            }
        echo json_encode($data);
}

更改html

items+="<li><a href='""+item.col1+"?eventid="+item.id+"'" data-transition='""+item.col4+"'">"+item.col2+"<p></p><p>"+item.col3+"</p></li>";});

在输入变量('")

时需要转义引号
items+="<li><a href='""+item.col1+"?eventid="+item.id+"'" data-transition='""slide"'">"+item.col2+"<p></p><p>"+item.col3+"</p></li>";

但是,另一方面,您应该让JQuery为您创建元素。参见:https://stackoverflow.com/a/4158203/1178781