如何使用具有相同 class 名称的多个 div 进行排序
How to make sortable work with multi divs with the same class name
如何使具有相同 class 名称的多个 div 可以排序#sortable。
这里有一个例子
update
<div class="multi-fields" id="sortable">
//something
</div>
<div class="multi-fields" id="sortable">
//another something
</div>
可排序
<script type="text/javascript">
var ajaxurl = "<?php echo admin_url( 'admin-ajax.php' ); ?>";
jQuery(document).ready(function($) {
$("#sortable").sortable({
cursor:'move',
opacity: 0.5,
cursor: 'pointer',
axis: 'y',
update:function(event, ui){
var order = $('#sortable').sortable('serialize');
$.ajax({
type: "POST",
url: "<?php echo admin_url( 'admin-ajax.php' ); ?>",
data: "action=update_field_order&" + order
});
}});
$("#sortable").disableSelection();
});
</script>
$("#sortable")
将 select 所有 ID 等于 "sortable" 的标签,而不是 class。
- 检查你的控制台。您是否收到有关
.sortable
的任何错误?
- Class 名称“#sortable”无效。将其更改为 "sortable" 并将 selector 更改为
$(".sortable")
。现在可以用了吗?
编辑
确切地说,(3) 在 HTML5 中有效。更好的做法是以字母开头的 class / id 名称。如果您必须使用“#”,则必须在 jQ selector 中将其转义。这是不必要的混淆。
我想你可能会这样说:
<script type="text/javascript">
var ajaxurl = "<?php echo admin_url( 'admin-ajax.php' ); ?>";
jQuery(document).ready(function($) {
$(".sortable").sortable({
cursor:'move',
opacity: 0.5,
cursor: 'pointer',
axis: 'y',
update:function(event, ui){
var order = $('.sortable').sortable('serialize');
$.ajax({
type: "POST",
url: "<?php echo admin_url( 'admin-ajax.php' ); ?>",
data: "action=update_field_order&" + order
});
}});
$(".sortable").disableSelection();
});
</script>
也将 id 属性更改为 class 并尝试!
如何使具有相同 class 名称的多个 div 可以排序#sortable。
这里有一个例子
update
<div class="multi-fields" id="sortable">
//something
</div>
<div class="multi-fields" id="sortable">
//another something
</div>
可排序
<script type="text/javascript">
var ajaxurl = "<?php echo admin_url( 'admin-ajax.php' ); ?>";
jQuery(document).ready(function($) {
$("#sortable").sortable({
cursor:'move',
opacity: 0.5,
cursor: 'pointer',
axis: 'y',
update:function(event, ui){
var order = $('#sortable').sortable('serialize');
$.ajax({
type: "POST",
url: "<?php echo admin_url( 'admin-ajax.php' ); ?>",
data: "action=update_field_order&" + order
});
}});
$("#sortable").disableSelection();
});
</script>
$("#sortable")
将 select 所有 ID 等于 "sortable" 的标签,而不是 class。- 检查你的控制台。您是否收到有关
.sortable
的任何错误? - Class 名称“#sortable”无效。将其更改为 "sortable" 并将 selector 更改为
$(".sortable")
。现在可以用了吗?
编辑 确切地说,(3) 在 HTML5 中有效。更好的做法是以字母开头的 class / id 名称。如果您必须使用“#”,则必须在 jQ selector 中将其转义。这是不必要的混淆。
我想你可能会这样说:
<script type="text/javascript">
var ajaxurl = "<?php echo admin_url( 'admin-ajax.php' ); ?>";
jQuery(document).ready(function($) {
$(".sortable").sortable({
cursor:'move',
opacity: 0.5,
cursor: 'pointer',
axis: 'y',
update:function(event, ui){
var order = $('.sortable').sortable('serialize');
$.ajax({
type: "POST",
url: "<?php echo admin_url( 'admin-ajax.php' ); ?>",
data: "action=update_field_order&" + order
});
}});
$(".sortable").disableSelection();
});
</script>
也将 id 属性更改为 class 并尝试!