Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui jquery ui在删除项时获取可删除元素的id_Jquery Ui_Drag And Drop - Fatal编程技术网

Jquery ui jquery ui在删除项时获取可删除元素的id

Jquery ui jquery ui在删除项时获取可删除元素的id,jquery-ui,drag-and-drop,Jquery Ui,Drag And Drop,当删除一个项目时,我们如何获得可删除元素的id?这里我使用jQueryUI和asp.NETMVC <table id="droppable"> <tr> <td style="width:300px;height:50px">Backlog</td> <td style="width:300px;height:50px">Ready</td> <td style="width:300p

当删除一个项目时,我们如何获得可删除元素的id?这里我使用jQueryUI和asp.NETMVC

 <table id="droppable">
    <tr>
    <td style="width:300px;height:50px">Backlog</td>
    <td style="width:300px;height:50px">Ready</td>
    <td style="width:300px;height:50px">Working</td>
    <td style="width:300px;height:50px">Complete</td>
    <td style="width:300px;height:50px">Archive</td>
    </tr>
        <tr id="cart">
        <td id="BackLog" class="drag"  style="width:120px;height:50px;">

         <img class="draggable" id="1234" src="../../Content/themes/base/images/ui-icons_222222_256x240.png" />

        </td>
            <td id="Ready"  class="drag"  style="width:140px;height:50px">


            </td>
            <td id="Working" class="drag"  style="width:140px;height:50px">

            </td>
            <td id="Complete" class="drag" style="width:140px;height:50px">


            </td>
            <td id="Archive" class="drag" style="width:140px;height:50px">

            </td>
        </tr>
    }
   </table> 

积压
准备好的
工作
完成
档案文件
}
在这里,我想将Ist列中的图像移动到另一列,并获取该列的id。 对于拖放,我使用脚本

<script type="text/javascript">
    $(function () {
        $(".draggable").draggable({ containment: '#imageboundary', axis: "x" });
        $("#droppable").droppable({
            drop: function (event, ui) {                                      
                $.ajax({
                    type: "POST",
                    url: '/Project/AddToPhase/' + $(ui.draggable).attr("id") ,
                    success: function (data) {
                        $('.result').html(data);
                    }
                });
            }
        });
    });
</script>

$(函数(){
$(“.draggable”).draggable({containment:'#imageboundary',轴:“x”});
$(“#可拖放”)。可拖放({
drop:函数(事件,ui){
$.ajax({
类型:“POST”,
url:'/Project/AddToPhase/'+$(ui.draggable).attr(“id”),
成功:功能(数据){
$('.result').html(数据);
}
});
}
});
});
您连接了一个
“drop”
事件,并询问刚才丢弃的元素。元素是下面函数中的参数
“ui”

$( ".selector" ).droppable({
   drop: function(event, ui) { ... }
});

查看

以获取可拖动和可拖放元素的id,请使用以下命令:

$('.selector').droppable({ drop: Drop });

function Drop(event, ui) {
  var draggableId = ui.draggable.attr("id");
  var droppableId = $(this).attr("id");
}
抱歉,您可能会迟到一点,但我刚刚开始使用jquery,需要确切的东西。

jquery用户界面提到如何“秘密地”在以下位置获取“Dropon Dropable”:

事件。可以检查目标
,查看哪个可拖放设备接收到 可拖动元件

但是请注意,
event.target
只包含一个DOM元素

回答你的问题 通过第一个参数
事件
,您将能够在
可拖放
拖放
回调中获取ID

纯JS 属性:
event.target.id
-如果未设置id:空字符串“”
属性:
event.target.getAttribute('id')
-如果未设置id:null

jQuery 属性:
$(event.target).prop('id')
-如果未设置id:空字符串“”
属性:
$(event.target).attr('id')
-如果未设置id:未定义

用法示例

$(函数(){
$(“.droppablesSelector”).droppable({
drop:函数(事件,ui){
//在控制台日志中显示ID:
console.log(event.target.id);
}
});
});
附加信息
jQuery的事件系统根据W3C标准规范化事件对象。
事件对象保证 传递给事件处理程序(不需要检查window.event)。信息技术 标准化目标、相关目标,其中包括元键和pageX/Y 属性,并提供stopPropagation()和preventDefault() 方法

  • 第3项
  • 第2项
  • 第1项
  • 第4项
jQuery代码

$(".listitems li").sort(sort_li).appendTo('.listitems');
// sort function callback
function sort_li(a, b){
    return ($(b).data('position')) < ($(a).data('position')) ? 1 : -1;    
}
$(“.listitems li”).sort(sort_li).appendTo(“.listitems”);
//排序函数回调
函数排序(a,b){
返回($(b).数据('position'))<($(a).数据('position'))?1:-1;
}

谢谢。。我们需要更多的解释这是错误的。ui.draggable只返回draggable元素,而不是它被拖放到的元素。使用$(this)来获取元素。ui.draggable对我来说是未定义的。谢谢,它工作得很好,我一直在寻找这个答案。1+
<ul class="listitems">
    <li data-position="3">Item 3</li>
    <li data-position="2">Item 2</li>
    <li data-position="1">Item 1</li>
    <li data-position="4">Item 4</li>
</ul>
$(".listitems li").sort(sort_li).appendTo('.listitems');
// sort function callback
function sort_li(a, b){
    return ($(b).data('position')) < ($(a).data('position')) ? 1 : -1;    
}