0

我不确定最好的方法,我确信我的 JQuery 至少可以说是“笨拙的”,但它完成了工作的第一部分。

我正在将“产品”拖到这样的篮子中:

$j('#basket').droppable({ 
accept: '.productsimg',
drop: function(ev, ui) { 
        $j(this).append(ui.draggable.clone());
        $j("#basket .deleteit").show();
        $j('#basket .instructions').hide();
        $j("#basket .quantityIndicator").show();
        $j("#basket").css("background-image","none");
        $j('#basket .productsimg').removeClass('productsimg');
        $j('#basket .attachment-100x100').css('width','50px');
        $j('#basket .attachment-100x100').css('height','50px');
        $j("#basket .hiddentitle").show();  
        var result = $j('#basket').sortable('toArray');

        alert(result);
        $j('#total').load('/wordpress/wp-content/plugins/shop/test.php');
      } 
});

是的,我在删除后也在“操纵 CSS”。到目前为止,我可以“获取”删除元素 ID 的唯一方法是将篮子设置为这样的可排序

$j('#basket').sortable({ 

});

通过这样做,我可以使用“结果”警报来查看排列的 ID - 这有效,但我确信它是不正确的。当我像这样从篮子中取出掉落的物品时,不起作用的是:

$j("#basket .deleteit").live('click',function(){
    $j(this).parent().remove();
    var test = $j('#basket').sortable('toArray');
    alert(test);
    var num = $j('#basket .deleteit').length
    if (num == 0) {
       $j('#basket .instructions').show();
       $j("#basket").css("background-image","url(/wordpress/wp-content/plugins/shop/img/cart.png)");
    }
});

我真正想要发生的是要更新的购物篮数组。但事实并非如此。请提供任何线索。谢谢。- 哦,请尽量保持“简单”,因为我在 JQuery 中“非常简单”

4

1 回答 1

1

你的是

$j("#basket .deleteit").live('click',function(){ 
     $j(this).parent().remove(); 
     //....some codes..... 
 });

你有没有尝试过,

$j("#basket .deleteit").live('click',function(){ 
    //.... ...some codes... .... 
    $j(this).parent().remove(); 
});

编辑:根据您的帖子评论

var result = $("ul#someId li").map(function(){
   return this.id;
}).get();
// result is now an array containing the id's of li.

演示

于 2010-06-29T07:10:41.967 回答