用xml填充jQuery UI手风琴,绑定问题

我从简单的xml文件中填充jQuery手风琴,我可以获取我的数据并将其作为html附加到模拟手风琴标记。 然后我打电话给手风琴,它将无法工作!

我想问题是将新创建的数据绑定到DOM,我已经尝试过.live()和.delegate但没有成功。

我该怎么办?

这是我的代码的简化示例(抱歉,一些名称和评论是芬兰语:-))这里是链接http://www.equstom.fi/hanuri.html

$('#valitsija').click(function() { $.get('http://www.equstom.fi/kurssit.xml', function(data) { $('#accordion').empty(); $(data).find('Kurssi').each(function() { var $kurssi = $(this); var html = '
'; html += '

' + $kurssi.find('KurssinNimi').text() + '

'; html += '
' + $kurssi.find('KurssiKuvaus').text() + '
'; html += '
'; $('#accordion').append($(html)); }); }); });

/ * * ** * ** * ** * haetaankurssit loppu * ** * ** ** * *** / // Accordion $(“#accordion”)。accordion({header:“h3”});

 http://www.equstom.fi/hanuri.html 

请注意我添加的两行(带注释)。 你需要销毁然后重新创建手风琴。

  $('#valitsija').click(function() { $.get('http://www.equstom.fi/kurssit.xml', function(data) { //you need to destroy the accordion first $('#accordion').accordion("destroy"); $('#accordion').empty(); $(data).find('Kurssi').each(function() { var $kurssi = $(this); var html = '
'; html += '

' + $kurssi.find('KurssinNimi').text() + '

'; html += '
' + $kurssi.find('KurssiKuvaus').text() + '
'; html += '
'; $('#accordion').append($(html)); }); //you need to re-make the accordion $("#accordion").accordion({ header: "h3" }); }); });

我建议将#accordion存储到变量中,这样你就不必继续搜索它。 这称为缓存。 (我知道这不是你的问题,但我认为无论如何都会提出这个建议)。 像这样的东西:

 $('#valitsija').click(function() { $.get('http://www.equstom.fi/kurssit.xml', function(data) { var acc = $('#accordion'); //you need to destroy the accordion first acc.accordion("destroy"); acc.empty(); $(data).find('Kurssi').each(function() { var $kurssi = $(this); var html = '
'; html += '

' + $kurssi.find('KurssinNimi').text() + '

'; html += '
' + $kurssi.find('KurssiKuvaus').text() + '
'; html += '
'; acc.append($(html)); }); //you need to re-make the accordion acc.accordion({ header: "h3" }); }); });

certificate它有效

我昨晚给jQuery Accordion实用程序编写了一个XML,我想我会在这里与大家分享。 任何反馈都表示赞赏。

http://lytsp33d.com/xml-to-jquery-accordion/

最好的问候,扎克