我想
- 编辑每个可排序项上的文本字段
- 防止某些可排序的层被拖动
为了防止拖动(#2),我遵循api中的说明:
$( ".selector" ).sortable({ cancel: ".donotmoveme" });
但是,现在无法再编辑那个无法启动的层上的文本字段。
以下是问题的演示:
http://jsfiddle.net/D6yzf/
以下是相关代码:HTML:
<div class="sortable">
<div class='donotmoveme'>
<input type="text">
</div>
<div>
<input type="text">
</div>
</div>
JS:
$( ".sortable" ).sortable({
'cancel':'.donotmoveme'
});
嗯,我不确定问题的确切原因,但这里有一个解决方案jsFiddle
您可以添加一个句柄,该句柄将用于在可排序文件中拖动元素。
此外,如果您已经看到,当您指定cancel属性时,实际上不是.notme
输入文本被禁用,而是其他输入被禁用。
.js
$( ".sortable" ).sortable({
cancel:'.notme',
handle:".sort"
});
.html
<div class="sortable">
<div>
<input type="text">
<span class="sort">sort handle</span>
</div>
<div class="notme">
<p>not me</p>
<input type="text">
<span class="sort">sort handle</span>
</div>
</div>