如何在像这样的javascript对象中设置字段

How do I set fields inside a javascript object like this one?

本文关键字:对象 设置 字段 javascript 像这样      更新时间:2023-09-26

我是javascript的新手,我想知道如何才能深入到java脚本对象和设置字段,就像我在下面发布的一样。我可不可以这样说:

$("#pivotGridContainer").dxPivotGrid().datasource.Fields[0].area = X;

我有java和c的经验,我认为这是可能的吗?

widgets.js

   $("#pivotGridContainer").dxPivotGrid({

     dataSource: {
            store: orders,
            fields: [
                { area: 'column', dataField: 'OrderDate', dataType: 'date', groupInterval: 'year' },
                { area: 'column', dataField: 'OrderDate', dataType: 'date', groupInterval: 'quarter' },
                { area: 'column', dataField: 'OrderDate', dataType: 'date', groupInterval: 'month' },
                { area: 'row', dataField: 'ShipCountry' },
                { area: 'row', dataField: 'ShipCity' },
                { area: 'row', dataField: 'ShipName' },
                { area: 'data', summaryType: 'count' }
            ]
        }
    });

page.html

<html>
     <head>
      some dependencies
     </head>
    <body>
         <div id="pivotGridContainer" style="height:800px; width:1000px;   margin:    0 auto"></div>
    </body>
</html>

最后一个问题。我经常在这些可视化工具的文档中寻找获取和设置字段或初始化新小部件的方法。是否可以打印/返回js对象的所有方法和字段?

调用的$("#pivotGridContainer").dxPivotGrid()部分将返回一个可链接的jQuery对象,而不是一个具有数据源的对象。

你可以通过each() jQuery方法访问dom元素

$("#pivotGridContainer").dxPivotGrid().each(function(){
});

函数中的this对象为DOM节点。所以你可以查询任何绑定到它的东西。但是你要遍历DOM树所以这比.datasource.Fields[0].area = X

要复杂一些

一个更好的解决方案是在将数据传递给dxPivotGrid()之前对其进行操作。