Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquerymobile添加动态可折叠div_Jquery_Jquery Mobile_Collapsable - Fatal编程技术网

Jquerymobile添加动态可折叠div

Jquerymobile添加动态可折叠div,jquery,jquery-mobile,collapsable,Jquery,Jquery Mobile,Collapsable,可能重复: 我想知道如何动态地添加一个可折叠的div,这样的事情可以通过jqmlistviews来完成,之后调用lisview('refresh') 以下是测试代码: 编辑:在上面,它被追加和渲染,但多次 edit2:似乎是这样工作的?既然您正在初始化元素(而不是刷新它),那么省略刷新如何: 下面是一个进行此优化的JSFIDLE:jQM文档: 增强新标记页面插件发送pagecreate事件,大多数小部件使用该事件自动初始化自己。只要 当小部件插件脚本被引用时,它将自动增强 它在页面上找

可能重复:

我想知道如何动态地添加一个可折叠的div,这样的事情可以通过jqmlistviews来完成,之后调用lisview('refresh')

以下是测试代码:

编辑:在上面,它被追加和渲染,但多次


edit2:似乎是这样工作的?

既然您正在初始化元素(而不是刷新它),那么省略
刷新
如何:

下面是一个进行此优化的JSFIDLE:

jQM文档:

增强新标记
页面插件发送pagecreate事件,大多数小部件使用该事件自动初始化自己。只要 当小部件插件脚本被引用时,它将自动增强 它在页面上找到的小部件的任何实例

但是,如果在客户端生成新标记或通过 Ajax并将其注入页面中,您可以触发create事件 处理中包含的所有插件的自动初始化 新的标记。这可以在任何元素(甚至页面)上触发 div本身),省去了手动初始化每个插件的任务 (列表视图按钮、选择等)

例如,如果加载了一块HTML标记(比如登录表单) 在中,通过Ajax触发create事件以自动转换 它包含的所有小部件(在本例中为输入和按钮)都将 增强版。此场景的代码为:

$( ...new markup that contains widgets... ).appendTo( ".ui-page" ).trigger( "create" );

我不确定这是否是您想要的,但是如果您只想动态添加可折叠的div,那么您可以在代码端这样做。例如,我使用aspx.vb,但如果您使用其他语言,则可以根据您的情况轻松地进行调整。在.aspx(html代码)中,在希望动态html代码出现的位置编写这行代码

<asp:Literal ID="CollapseMe" runat="server"></asp:Literal>

完成后,右键单击屏幕并选择“查看代码”

然后你加上这个

Protected Sub page_load(ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles    MyBase.Load

Dynamic()

End Sub 



Public Sub Dynamic()
    Dim strHtml As New StringBuilder
    Dim strJava As New StringBuilder
    Dim dblNumCollapsibles As New Double

    dblNumCollapsibles = 7

    For i = 1 To dblNumCollapsibles

        strHtml.Append("<div data-role=""collapsible"" data-theme=""c"" data-collapsed=""false"">" _
                                        & "<h3>Title of Collapsible</h3>" _
                                        & "<p data-theme=""a"" style=""white-space: normal;"">" _
                                        & "The text inside of the Collapsible" _
                                        & "</p>" _
                                    & "</div>")


    Next

    Me.CollapseMe.Text = strHtml.ToString
Protected Sub page_load(ByVal Sender作为System.Object,ByVal e作为System.EventArgs)处理MyBase.load
动态()
端接头
公共子动态()
作为新的StringBuilder调整strHtml
Dim strJava作为新的StringBuilder
Dim DBLnum可折叠为新的双精度
DblNumColumbles=7
对于i=1到DblNum可折叠
strHtml.Append(“”)_
&“可折叠文件的标题”_
&“

”_ &“可折叠文件中的文本”_ &“

”_ & "") 下一个 Me.CollapseMe.Text=strHtml.ToString

这将动态添加7个可折叠的div列表栏。您可以通过更改“dblnumcollapsables”来改变这一点。

创建可折叠div的html动态添加到某个div,并在该div调用上进行添加。触发器('create'))
$(div).trigger('create')这将创建该div并呈现可折叠的div

即使使用JSFIDLE也不清楚您想要什么。看看动态元素事件处理。您正在使用依赖于jQuery 1.6.4的jQM RC2,jQM 1.1版即将推出,它将使用jQuery 1.7.x IHMO。您至少应该升级到jQM 1.0.1和jQuery 1.6.4我们将1.7.1与jQM 1.0一起使用,它工作得很好。@jostster我以前也这么认为,但jquerycore1.7.1和jquerymobile1.0并不能在黑莓和Windows手机上100%运行。我已经在几个只显示白色屏幕的设备上进行了测试。我建议坚持使用jQuery Mobile附带的jQuery核心。@Jasper说得不错。我们只针对安卓和iPhone,所以我们没有在黑莓上测试。很高兴知道。如果我只在一整页中添加一个div,这不是太多了吗?
<asp:Literal ID="CollapseMe" runat="server"></asp:Literal>
Protected Sub page_load(ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles    MyBase.Load

Dynamic()

End Sub 



Public Sub Dynamic()
    Dim strHtml As New StringBuilder
    Dim strJava As New StringBuilder
    Dim dblNumCollapsibles As New Double

    dblNumCollapsibles = 7

    For i = 1 To dblNumCollapsibles

        strHtml.Append("<div data-role=""collapsible"" data-theme=""c"" data-collapsed=""false"">" _
                                        & "<h3>Title of Collapsible</h3>" _
                                        & "<p data-theme=""a"" style=""white-space: normal;"">" _
                                        & "The text inside of the Collapsible" _
                                        & "</p>" _
                                    & "</div>")


    Next

    Me.CollapseMe.Text = strHtml.ToString