Gridster remove_widget抛出错误和remove()不会从网格中删除小部件空间

时间:2013-08-28 04:32:23

标签: javascript jquery gridster

我有一个我正在处理的网格页面,我在

  • 元素中有图像,这些图像是我希望能够用来控制小部件的可点击按钮。但是,我正在处理的第一个(删除)是抛出一个错误:

    “TypeError:this.data is undefined”指向jquery.gridster.min.js

    我的HTML& js是(两者都嵌入在php文件中,因为它是wordpress插件的一部分):

    <li id ="fieldId\' + fieldId + \'" class="layout_block">
    <img src="'.site_url().'/wp-content/plugins/fresh-forms/img/remove.png" 
      class="removeWidget" width="16" style="padding: 4px; float: right;" 
      onclick="gridsterRemoveField(this)"/>
    <div class="info" style="color: #666666;">
    <span class="block_name">New Field : Edit to see preview</span>
    </div></li>
    
    
    
    function gridsterRemoveField(widget){
            fieldId = $(widget).parent().attr("id");
            console.log(fieldId); //returns <li> ID
            fieldIndex = $("li").index($("#" + fieldId));
            console.log(fieldIndex); //returns <li> index
            var rem = gridster.remove_widget($(".layout_block").eq(fieldIndex));
        }
    

    我非常乐意使用gridster api或jquery的remove()或任何其他选项。我只需要从网格和页面中删除元素。

  • 1 个答案:

    答案 0 :(得分:0)

    var rem = gridster.remove_widget($(".layout_block").eq(fieldIndex), true);
    

    在那里添加true作为参数。它会阻止小部件向上移动,这将导致错误。

    还有一个remove_all_widgets函数是为了解决这个我认为的错误而构建的,但它没有按照我想要的方式工作。虽然我没有花太多时间试图让它发挥作用。