Dojo:对于网格中的每一行,都有一个按钮,单击该按钮可显示数据存储中的更多信息

时间:2013-07-18 01:29:48

标签: javascript dojo dojox.grid.datagrid

这被证明是非常困难的。

假设我有一个显示文件名称和大小的网格。

将信息从JSON文件加载到dojo/store/Memory的实例中,然后在网格中显示关键属性。如何在网格的每一行上包含一个按钮,单击该按钮时,会显示有关该文件的更多属性?这些属性存储在dojo/store/memory

现在我在网格中有这样一行:

    {name:"More", field:"id", formatter: buttonFormatter, datatype:"string", noresize: true, width: "120px"}

我尝试使用格式化程序将ID传递给按钮:

    var buttonFormatter = function(inValue){
        var newButton = new Button({
            label: "Details",
            onClick: function(inValue){
                alert("More information about " + inValue + "  goes here");
            }
        });
        return newButton;
    }

然而,这不起作用。

据我所知,困难是:
1)将每个特定按钮与来自商店的特定文件相关联
2)提供onClick javascript访问商店中的数据

感谢您的帮助! 特里斯坦

2 个答案:

答案 0 :(得分:0)

您可以使用dojo-data-type-event附加点来执行操作。网格小部件实例中的相应方法将根据您的需要以不同的样式显示您的更多属性,如工具提示,追加,对话等等

答案 1 :(得分:0)

不确定这可能会对您有所帮助,但请看一下。

在这个示例中,按钮上有一个onclick-Event可以缩放到单击的行。

https://developers.arcgis.com/en/javascript/jssamples/fl_zoomgrid.html

此致