我使用的手风琴盒来自 Jquery UI。它不起作用。
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
这是我使用手风琴框的事件处理程序
$("#skillcat").click(function(e) {
//var submit_val = new Array();
//$('#accordion1').accordion('destroy');
e.preventDefault();
var ids = [];
var el = $('[name*=check_subjects]:checked'); //Get all checked Checkboxes
el.each(function () {
ids.push($(this).attr('id')); //get the Id from each checkbox
});
$.ajax( {
type : "POST",
dataType : "json",
//
url : "./wp-admin/admin-ajax.php",
data : {
action : 'each_category',
check_subjects : ids
},
success : function(data) {
alert(data);
$('#accordion1').html(data);
$("#accordion1").accordion({ active: 0 });
$("#accordion1").css("font-family", "'Trebuchet MS', Arial, Helvetica, sans-serif");
$("#accordion1").css("font-size", "0.9em");
}
});
});
我想渲染手风琴的地方
<div id="accordion1" >
</div>
但是,当我第一次单击该按钮时,我将数据发送到警报框。它呈现内容,但不应用手风琴框。我在同一页上有另一个手风琴,但它可以工作。
如果我单击同一页面上的另一个按钮并尝试提交上面的按钮,我会收到数据以发出警报,但它不会将 html 呈现给浏览器。
我在哪里做错了?
阿贾克斯正在工作。
更新
当我添加此代码时
$('#accordion1').accordion('destroy');
前
$('#accordion1').html(data);
手风琴开始工作。但像往常一样,它第二次不起作用。