与jQuery UI Nested Sortable 1.2.1有关的另一个问题。
我们称这个函数为:
$(document).ready(function(){
$('ol.sortable').nestedSortable({
disableNesting: 'no-nest',
forcePlaceholderSize: true,
handle: 'div',
items: 'li',
opacity: .6,
placeholder: 'placeholder',
tabSize: 25,
tolerance: 'pointer',
toleranceElement: '> div'
});
我在想如何通过此方式发送更多信息,例如:
$(document).ready(function(){
$('ol.sortable').nestedSortable({
disableNesting: 'no-nest',
forcePlaceholderSize: true,
handle: 'div',
items: 'li',
left_val: '<?=$lft?>',
root_id: '<?=$id?>',
opacity: .6,
placeholder: 'placeholder',
tabSize: 25,
tolerance: 'pointer',
toleranceElement: '> div'
});
想法是在toArray函数中以下列方式使用三个变量left_val,root_id和holder。
var left = this.left_val;
var root_id = this.root_id;
当然,这不起作用。值以NaN,NaN和未定义的形式出现。
在alert(left+' '+root_id);
下面var left = this.left_val; var root_id = this.root_id;
正在给我一个提醒,说明undefined undefined
选项的选项来自parent plugin jQuery UI。
只是想知道是否有人可以对此表示赞赏。
修改
我尝试了另一种技巧。我尝试通过<ol class="sortable" title="<?=$lft?>|<?=$id?>">
发送left和root_id值,然后在js页面中,我尝试了
if ($(this).parent().attr('class') == 'sortable') {
var idArray = $(this).parent().attr('title').split("|");
}
但我警告$(this).parent().attr('class')
为undefined
。
答案 0 :(得分:0)
你看过JQuery.data()吗?这将允许您使用元素存储键/值对中的任意数据。 JQuery Data() Documentation
以下是更多文档Link
答案 1 :(得分:0)
这最终解决了:
var idArray =$(this.element).closest("ol.sortable").attr('title').split("|");