jquery - 拒绝可排序列表中的无效可排序项

标签 jquery html css jquery-ui

我尝试了很多但没有成功 :( 我有两个相互连接的可排序列表。问题是列表“A”可以接受其中的任何列表项。但是列表“B”只能接受具有类 = 'abc'

代码如下

<ul id='A'>
  <li>item A1</i>
  <li>item A2</i>
  <li class='abc'>item A3</i>
</ul>

<ul id='B'>
  <li class='abc'>item A1</i>
</ul>

我正在尝试的 jquery 代码是

$('#A').sortable({revert: true, connectWith: '#B'})
$('#B').sortable({revert: true, connectWith: '#A', over: function(event, ui){
   if(!ui.item.hasClass('abc')){
     ui.placeholder.addClass('ui-state-error');
     ui.sender.sortable('cancel');
   }
}})

哪里不对请指点一下,谢谢

最佳答案

您可以尝试改用接收事件,尽管这样做会有点延迟,而且 addClass 不起作用:

$('#A').sortable({revert: true, connectWith: '#B'})
$('#B').sortable({revert: true, connectWith: '#A',
    receive: function(event, ui){
        if(!ui.item.hasClass('abc')){   
            $(ui.placeholder).addClass('ui-state-error');                    
            $(ui.sender).sortable('cancel');
        }}
})​;​

示例 - http://jsfiddle.net/b5ykK/1/

关于jquery - 拒绝可排序列表中的无效可排序项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9516701/

相关文章:

jquery - 根据值更改字体大小

jQuery 动画边框似乎不起作用

jquery - 超出的最大上传文件大小将被忽略

html - CSS 保持元素最大顶部和左侧

python - 在 Flask-Admin 中修改输入字段大小

html - 如何让页面水平滚动?

javascript - <audio> 标签的可定制和跨浏览器友好的音频播放器

javascript - JQuery 条件处理程序

html - 所列元素的元素符号点未对齐

html - 当视口(viewport)太小时,将三个词分成三行