我对道场不熟悉。我正在使用这个应用程序,它有一个 dojo 数据网格。
<table jsid="grid" id="grid" dojoType="dojox.grid.DataGrid" store="store"
clientSort="true" style="height: 400px;" rowsPerPage="10"
postrender="setTableCount(store,'count');"
>
<thead>
<tr>
<th field="enabled" width="24px" styles='text-align: center;'
celltype="dojox.grid.cells.Bool" formatter="formatterEnabled"
dojoType="dijit.form.CheckBox"><img src='../common/images/check-16.png' title='Enabled'/></th>
<th field="number" width="100px" >Number</th>
<th field="name" width="100px" >Name</th>
<th field="extension" width="100px" >Extension</th>
<th field="type" width="100px" >Type</th>
<th field="deleted" width="20px"
formatter="formatterZombieSkill">
<img src='../common/images/blocks-delete-16.png' title='Marked for deletion'/></th>
</tr>
</thead>
生成的表很大,我想突出显示分布在网格中的 10 行。例如,如果扩展列已排序,并且它从 1..10000 开始,我想突出显示第 1、32、435 和 980 行。我可以通过按住 ctrl 按钮的同时单击鼠标来完成此操作,但是当我有 40 个值可供选择,这变得很乏味。
我没有服务器端访问代码的权限,所以我只想简单地使用浏览器的脚本引擎。
我想输入一些快速的 javascript,例如:
javascript: var x = [1, 2, 3]; for(i in x) { /*SELECT/HIGHLIGHT/SIMULATE-CLICK THE ROW WHERE THE VALUE IN THE COLUMN NAMED EXTENSION = x[i]*/}
你们中的一位道场大师可以帮我解决缺少的 select 语句吗?
最佳答案
我不是道场大师,但是如果您尝试以编程方式选择行,这可能会满足您的需要...我认为 DataGrid 包含 dojox.grid.Selection 的实例。
http://api.dojotoolkit.org/jsdoc/1.3.2/dojox.grid.Selection
Selection dijit 有一个名为 setSelected 的方法,我相信该方法需要一个索引和一个用于选择/未选择的 bool 值。所以我认为你可以这样做:
dijit.byId("grid").selection.setSelected(i, true);
我还没有测试过它,但我认为这可以完成您需要的选择/突出显示。尝试一下,让我知道它是否有效。
关于javascript - dojox.grid.DataGrid 通过列的值选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3779523/