【问题标题】:How to remove / delete an item from a Dojo Drag and Drop Source?如何从 Dojo 拖放源中移除/删除项目?
【发布时间】:2012-08-10 21:31:54
【问题描述】:

我有以下 Dojo DnD,但我不知道如何从 catalog 源中删除和添加项目。我最终想要做的是允许用户:

  1. 将项目从catalog 拖到wishlist...这工作正常。
  2. 通过单击清除列表按钮删除catalog 中未移动到wishlist 的所有剩余项目...在此处需要帮助。
  3. 可以通过单击以下代码中未列出的另一个按钮向catalog 添加新项目...需要帮助。

总而言之,我需要知道如何从catalog 中删除项目和添加项目,并将任何移动的项目保留在wishlist 中。

dojo.addOnLoad(function() {
    require([ "dojo/dom-class", "dojo/dnd/Source", "dijit/form/Button", "dojo/domReady!" ], function(domClass, Source){
        var catalog = new Source("catalogNode");
        catalog.insertNodes(false, [
            { data: "Bushmaster <div id='5' style='display:none;'>5</div>"},
            { data: "Colt <div id='4' style='display:none;'>4</div>"},
            { data: "DPMS <div id='6' style='display:none;'>6</div>"},
            { data: "Glock <div id='2' style='display:none;'>2</div>"},
            { data: "Kahr Arms <div id='7' style='display:none;'>7</div>"},
            { data: "Marlin <div id='3' style='display:none;'>3</div>"},
            { data: "Remington <div id='78' style='display:none;'>78</div>"},
            { data: "Rock River Arms <div id='1' style='display:none;'>1</div>"},
            { data: "Smith & Wesson <div id='105' style='display:none;'>105</div>"}
        ]);
        catalog.forInItems(function(item, id, map){
            domClass.add(id, item.type[0]);
        });

        var wishlist = new Source("wishlistNode");

        new dijit.form.Button({
            label: "Clear List",
            onClick: function() {
                alert("Clearing Items");
            }
        },
        "clearListBtn");
    });
});

【问题讨论】:

    标签: dojo drag-and-drop dojo-dnd


    【解决方案1】:

    删除源中的所有(剩余)元素:

    // e.g., var catalog = new Source("catalogNode");
    catalog.selectAll().deleteSelectedNodes();
    

    可以随时使用相同的insertNodes()添加新项目:

    catalog.insertNodes(false, additionalData);
    

    【讨论】:

      猜你喜欢
      • 2020-06-18
      • 1970-01-01
      • 1970-01-01
      • 2020-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-06
      • 2013-05-06
      相关资源
      最近更新 更多