Javascript 部分ajax页面重新加载后jquery手风琴损坏
我使用的是jQueryAccordion,它在初始页面加载时运行良好,但随后我使用了一些ajax命令来重新加载页面的一部分,基本上是页面的内部主体 当这种情况发生时,手风琴被破坏,因为我所做的重新加载只是替换几乎整个body字段的innerHTML 加载手风琴的脚本也包含在替换的HTML中,但显然没有帮助 在替换整个页面的innerHTML后,如何保持(或重新调用)手风琴效果Javascript 部分ajax页面重新加载后jquery手风琴损坏,javascript,jquery,ajax,jquery-ui,jquery-ui-accordion,Javascript,Jquery,Ajax,Jquery Ui,Jquery Ui Accordion,我使用的是jQueryAccordion,它在初始页面加载时运行良好,但随后我使用了一些ajax命令来重新加载页面的一部分,基本上是页面的内部主体 当这种情况发生时,手风琴被破坏,因为我所做的重新加载只是替换几乎整个body字段的innerHTML 加载手风琴的脚本也包含在替换的HTML中,但显然没有帮助 在替换整个页面的innerHTML后,如何保持(或重新调用)手风琴效果 <div class="art-Post-inner" id="ajaxWrapper">
<div class="art-Post-inner" id="ajaxWrapper">
<div id="accordion">
<h3><a href="#">Skärm 1</a></h3>
<div>
my accordion content
</div>
</div>
<script>
$(document).ready(function() {
$( '#accordion' ).accordion({
collapsible: true, active: false, autoHeight: false
});
});
</script>
我的手风琴内容
$(文档).ready(函数(){
$('手风琴')。手风琴({
可折叠:真,活动:假,自动高度:假
});
});
这项技术完全被id=ajaxWrapper的div的innerHTML设置所取代
我相信您已经看到了问题。将jquery accordion函数放入
.ajax
请求的成功回调中:
例如:
var accordionOpts = {
collapsible: "true",
active: "false",
autoHeight: "false"
};
$('#accordion').accordion(accordionOpts);
$("#replaceContent").click(function() {
$.ajax({
type: 'POST',
cache: false,
data: {
html: "<div id='accordion'><h3><a href='#'>Skärm 2</a></h3><div>my accordion content</div></div>"
},
url: '/echo/html/',
success: function(data) {
$(".art-Post-inner").html(data);
$('#accordion').accordion(accordionOpts);
}
});
});
var accordionOpts={
可折叠:“真”,
活动:“假”,
自动高度:“假”
};
$('手风琴')。手风琴(手风琴音乐);
$(“#替换内容”)。单击(函数(){
$.ajax({
键入:“POST”,
cache:false,
数据:{
html:“我的手风琴内容”
},
url:“/echo/html/”,
成功:功能(数据){
$(“.art-Post-inner”).html(数据);
$('手风琴')。手风琴(手风琴音乐);
}
});
});
小提琴:使用$(“.selector”)。手风琴(“刷新”) 谢谢!我看不出我怎么会错过这个事实上有效的方法。为什么每个人都在一行代码中创建困难的脚本?非常感谢你也解决了我的问题!更多信息:工作!谢谢