gpt4 book ai didi

jquery - 可排序在 ajax 选项卡中不起作用

转载 作者:行者123 更新时间:2023-12-01 06:01:46 24 4
gpt4 key购买 nike

在我的页面中,我使用prototypejs来使用Ajax选项卡。其中之一包括一个可排序的。虽然 sortable 单独工作,当我将其放入选项卡时,它不起作用。我怎么解决这个问题?谢谢。

我的选项卡如下:

<div id="container">
<div class="tabs" id="tab1">Tab 1</div>
<div class="tabs" id="tab2">Tab 2</div>
<div class="tabs" id="tab3">Tab 3</div>
</div>

我的可排序列表如下:

<ul id="list">
<li>now</li>
<li>works</li>
<li>this</li>
</ul>

<script type="text/javascript">
Sortable.create("list");
</script>

我的ajax函数如下

function init () {

var tabs = document.getElementsByClassName('tabs');
for (var i = 0; i < tabs.length; i++) {
$(tabs[i].id).onclick = function () {
getTabData(this.id);
}
}
}
function getTabData(id) {
var url = 'demos/ajax-tabs/process.php';
var rand = Math.random(9999);
var pars = 'id=' + id + '&rand=' + rand;

var myAjax = new Ajax.Request(
url, {
method: 'get',
parameters: pars,
onLoading: showLoad,
onComplete: showResponse
});

}
function showLoad () {
$('load').style.display = 'block';
Sortable.create("list");

}
function showResponse (originalRequest) {
//Sortable.create("list");
var newData = originalRequest.responseText;
$('load').style.display = 'none';
$('content').innerHTML = newData;


}
init();

最佳答案

如果你调用Sortable.create("list");函数,它将在您的页面中搜索 id 为“list”的所有元素,使它们可排序。

但是:使用 Ajax,您需要在成功加载内容后再次调用 Sortable.create(),因为您需要再次将 sortable 应用于新内容。

function showResponse (originalRequest) {
var newData = originalRequest.responseText;
$('load').style.display = 'none';
$('content').innerHTML = newData; // make sure that newData contains <ul id="list">.....</ul>
Sortable.create("list");
}

关于jquery - 可排序在 ajax 选项卡中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10794648/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com