我使用了jQuery手风琴插件,使一些数据的手风琴。然后,我希望用户能够添加更多的数据的手风琴。我已经安装了手风琴正常运行,然后我做了一个前加“列表项”到手风琴语义匹配的手风琴的功能。

是否可以“更新”手风琴,使其可与新添加的元素,如果没有新的数据保存到数据库并刷新页面?

像这样:

.accordion('refresh')

或者类似的东西在的jQuery 1.3添加了现场活动,任何人都得到了线索?

有帮助吗?

解决方案

我没有测试过,但是这可能应该工作: 你说你有ID #accordion你的手风琴

$('#accordion').append('<h3><a href="#">New Paragraph</a></h3><div><p>New data</p></div>')
    .accordion('destroy').accordion();

基本上,只要破坏并重新创建手风琴。

<强>更新

由于该答案是写刷新()方法已经被添加到所述手风琴部件。它可以通过调用被调用:

$( ".selector" ).accordion( "refresh" );

可以进一步了解这种方法此处

其他提示

要添加新的部分,并保持旧的活性:

var active = $('#accordion').accordion('option', 'active');
$('#accordion').append('<h3><a href="#">New Paragraph</a></h3><div><p>New data</p></div>')
    .accordion('destroy').accordion({ active: active});

正如沙赫扎德如上所述,jQuery的UI 1.10取得这更容易;见的文档

您可能想要看的liveQuery插件: http://plugins.jquery.com/project /的liveQuery

它允许添加事件和加载DOM后结合。

由于我需要一个工作添加/编辑/删除VOR手风琴物品i黑客攻击这个小JavaScript函数用于该目的

http://jsfiddle.net/Sd6fC/

H3和DIV需要一个唯一的ID,其推移以下约定

<h3 id="divname_hitm_<uniquenumber>"><h3>

相应的div需要以下

<div id="divname_ditm_<samenumber as h3"></div>

样品手风琴代码块

<div id="divname">
    <h3 id="divname_hitm_1><a href="#">Section 1</h3>
    <div id="divname_ditm_1>
        <p>Section 1 Payload</p>
    </div>
    <h3 id="divname_hitm_2><a href="#">Section 2</h3>
    <div id="divname_ditm_2>
        <p>Section 2 Payload</p>
    </div>
</div>

有乐趣,也许它可以帮助一些脂肪酶在那里!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top