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

Gridster remove_widget throwing error and remove() does not remove widget space from grid

本文关键字:remove 网格 小部 空间 删除 widget 出错 错误 Gridster      更新时间:2023-09-26

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

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

    指向jquery.gridster.min.js 的"类型错误:this.data未定义"

    我的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));
        }
    

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

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

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

    我相信,还有一个remove_all_widgets函数是为了绕过这个bug而构建的,但它并没有按照我想要的方式工作。尽管我没有花太多时间试图让它发挥作用。