不允许在可排序列表中排序,仅使用 connectWith 将它们移动到不同的可排序列表
Don't allow sorting in a sortable list, only use connectWith to move them to a different sortable list
我正在使用 jQuery UI 的 .sortable
功能。我有列表 a 和列表 b。我希望用户能够:
- 将项目从列表 a 拖到列表 b 但不从列表 b 拖到列表 a
- 对列表 b 中的项目进行排序,但 不对列表 a 中的项目进行排序
我的代码只满足第一个要求。我无法阻止列表 a 中的项目排序。
虽然答案 中的代码会自动反转在列表中完成的任何排序,但它不会阻止在其中一起排序(这正是我正在寻找的)。
$("#sortable").sortable({
connectWith: "#sortable2"
});
$("#sortable2").sortable({});
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<p>List A</p>
<div id="sortable">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</div>
<p>List B</p>
<div id="sortable2">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</div>
JsFiddle:http://jsfiddle.net/g5nxjk0e/1/
注意可以有多个列表a可以拖入
请评论:https://jqueryui.com/draggable/#sortable
示例:
$(function() {
$(".drag > li").draggable({
connectToSortable: ".sort",
revert: "invalid"
});
$(".sort").sortable();
});
ul {
list-style-type: none;
margin: 0;
padding: 0;
margin-bottom: 10px;
}
li {
margin: 5px;
padding: 5px;
width: 150px;
}
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<p>List A</p>
<ul id="drag-1" class="drag">
<li>Item A</li>
<li>Item B</li>
<li>Item C</li>
</ul>
<p>List B</p>
<ul id="sort-1" class="sort">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
<p>List c</p>
<ul id="sort-2" class="sort">
<li>Apple</li>
<li>Blueberry</li>
<li>Cherry</li>
</ul>
我正在使用 jQuery UI 的 .sortable
功能。我有列表 a 和列表 b。我希望用户能够:
- 将项目从列表 a 拖到列表 b 但不从列表 b 拖到列表 a
- 对列表 b 中的项目进行排序,但 不对列表 a 中的项目进行排序
我的代码只满足第一个要求。我无法阻止列表 a 中的项目排序。
虽然答案 中的代码会自动反转在列表中完成的任何排序,但它不会阻止在其中一起排序(这正是我正在寻找的)。
$("#sortable").sortable({
connectWith: "#sortable2"
});
$("#sortable2").sortable({});
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<p>List A</p>
<div id="sortable">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</div>
<p>List B</p>
<div id="sortable2">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</div>
JsFiddle:http://jsfiddle.net/g5nxjk0e/1/
注意可以有多个列表a可以拖入
请评论:https://jqueryui.com/draggable/#sortable
示例:
$(function() {
$(".drag > li").draggable({
connectToSortable: ".sort",
revert: "invalid"
});
$(".sort").sortable();
});
ul {
list-style-type: none;
margin: 0;
padding: 0;
margin-bottom: 10px;
}
li {
margin: 5px;
padding: 5px;
width: 150px;
}
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<p>List A</p>
<ul id="drag-1" class="drag">
<li>Item A</li>
<li>Item B</li>
<li>Item C</li>
</ul>
<p>List B</p>
<ul id="sort-1" class="sort">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
<p>List c</p>
<ul id="sort-2" class="sort">
<li>Apple</li>
<li>Blueberry</li>
<li>Cherry</li>
</ul>