- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个自定义小部件,我从后端向其传递数据。网格显示在正确的位置,但未显示数据。我尝试使用硬编码数据,但仅显示标题。网格已设置高度和宽度。
这是代码片段。我将不胜感激任何帮助。谢谢。
define(["dojo/_base/declare", "dijit/_WidgetBase",
"dijit/_TemplatedMixin", "dijit/_WidgetsInTemplateMixin",
"dijit/_OnDijitClickMixin",
<div class="snippet" data-lang="js" data-hide="false">
<div class="snippet-code">
<pre class="snippet-code-js lang-js prettyprint-override"><code> GridWidget.js
define(["dojo/_base/declare", "dijit/_WidgetBase",
"dijit/_TemplatedMixin", "dijit/_WidgetsInTemplateMixin",
"dijit/_OnDijitClickMixin", "dojo/text!./templates/GridWidget.html",
"dgrid/Grid","dgrid/Keyboard", "dgrid/Selection", "dgrid/extensions/DijitRegistry", "dstore/Memory", "dstore/Trackable"], function(declare, _WidgetBase,
_TemplatedMixin, _WidgetsInTemplateMixin,
_OnDijitClickMixin, template, Grid, Keyboard, Selection, DigitRegistry, Memory, Trackable) {
return decalare("GridWidget", [_WidgetBase, _OnDijitClickMixin, _TemplatedMixin, _WidgetsInTemplateMixin], {
widgetsInTemplate: true,
baseClass: 'GridWidget',
templateString: template,
data: null,
store: null,
grid: null,
columns: null,
constructor: function(data) {
this.data = data;
},
_setData: function(input) {
if (input) {
this._set("data", input);
}
},
getData: function() {
return this.data;
},
postCreate : function() {
this.inherited(arguments);
var StandardGrid = declare([Grid, Selection, Keyboard, DijitRegistry]);
this.store = new (declare([Trackable, Memory]))({
data : this.data,
idProperty : "isbn"
});
this.columns = {
bookTitle : "Title",
first : "First Name",
last : "Last Name",
releaseDate : "Release Date"
};
this.grid = new StandardGrid({
collection : this.store,
columns : this.columns,
cellNavigation : false,
noDataMessage : "No results.",
loadingMessage : "Loading Data...",
}, this.gridNode);
}
startup: function() {
if (this._started) return;
this.inherited(arguments);
if (this.grid) {
this.grid.startup();
}
}
});
});</code></pre>
<pre class="snippet-code-html lang-html prettyprint-override"><code> GridWidget.html
<div class="${baseClass}">
<div class="${baseClass}Grid"data-dojo-attach-point="gridNode"></div>
</div>
testGridWidget.html
<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Test: Dgrid 0.4</title>
<link rel="stylesheet" href="style.css" media="screen">
<link rel="stylesheet" href="dojo/dijit/themes/claro/claro.css" media="screen">
<script>
//var startTime = new Date();
var CONTEXT_ROOT = 'DtossApp';
var djConfig = (function(){
var base = location.href.split("/");
base.pop();
base = base.join("/");
return {
parseOnLoad: true,
isDebug: true,
packages: [{
name: CONTEXT_ROOT,
location: base + "/widget"
}]
};
})();
</script>
</head>
<body class="claro">
<script>
function showGrid() {
require([
CONTEXT_ROOT + '/GridWidget',
'dojo/dom-construct',
'dojo/dom',
'dijit/layout/ContentPane',
], function (GridWidget, domConstruct, dom, ContentPane) {
var testWidget = new GridWidget({ data: createData()});
var cp = new ContentPane({
title : "Book List",
content : testWidget});
var ref = dom.byId('grid');
domConstruct.place(cp.domNode, ref);
testWidget.startup();
//Copied from dgrid laboratory sample..
function createData () {
var data = [];
var column;
var i;
for (i = 0; i < 50; i++) {
data.push({});
for (column in { first: 1, last: 1, bookTitle: 1, releaseDate: 1 }) {
data[i].isbn = i;
data[i][column] = column + '_' + (i + 1);
}
}
return data;
}
});
}
</script>
<h1>Test: Dgrid 0.4</h1>
<div id="buttonContainer">
<button class="action" onClick="showGrid1()">Show Grid</button>
</div>
<div id="grid"></div>
<!-- load dojo and provide config via data attribute -->
<script src="dojo/dojo/dojo.js"></script>
</body>
</html>
GridWidget.css
.GridWidgetGrid {
height: 300px;
width: 80%;
}</code></pre>
</div>
</div>
最佳答案
Dgrid 教程显示以下注释:
当使用基本的 Grid 模块时,网格将是空的,直到调用 renderArray。更高级的基于商店的实现(例如 OnDemandGrid)将自动从商店中填充自己。
我将网格更改为 OnDemandGrid,它会自动从存储中选取数据。
还在启动方法中调用 renderArray 填充 Grid 的数据。
关于javascript - 自定义小部件中的 dgrid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28904161/
目前,我正在使用带有选择框、文本框和两个复选框的 Dojo dgrid,但我无法禁用整行选择,而且当我单击第二个复选框时,dgrid 选择和取消选择不起作用,并且它反射(reflect)了第一个复选框
我有一个显示一些数据的 Dgrid,比如 DataDgrid。我想在主 DataDgrid 的一个单元格内添加一个基于另一个 Dgrid 的选择控件,比如 SelectDgrid。 要添加选择,我遵循
我使用 dgrid 以网格格式显示数据,它有四列。都是可编辑的 我使用以下方式来声明它。 ID Name Description
我的 d-grid 中的几行在一个小节中,行对象有一个属性来标识这样的一行。 我可以将这一行单元格合并为一个单元格并更改特定行的 CSS 以反射(reflect)小节部分吗? 最佳答案 也许您可以使用
我有一个自定义小部件,我从后端向其传递数据。网格显示在正确的位置,但未显示数据。我尝试使用硬编码数据,但仅显示标题。网格已设置高度和宽度。 这是代码片段。我将不胜感激任何帮助。谢谢。 define([
2015 年 6 月 30 日 - 我怎样才能让这个问题变得更好并且对其他人更有帮助?反馈会有帮助。谢谢! 我对 Dgrid、Dojo、Javascript 还很陌生——真的是所有这些。 在 dgri
我有一个 dgrid选择模式为 的表toggle .我的一个要求是实现双击一行来触发一个函数。 这是我所拥有的: grid.on('.dgrid-content .dgrid-row:dblclick
是否可以创建一个 dgrid 查询来在多个列上搜索正则表达式字符串?通常语法指定 {column1: "foo", column2: "foo"} 但它会查找 column1 和 column2 都是
我的 dgrid 网格存在陈旧数据问题。假设以下场景: Grid 被分配给 JsonStore,它加载相关数据(例如 GET/api/items) 用户选择一个元素,网格会发出 dgrid-selec
现在我已经 require([ "dojo/on", "dgrid/OnDemandGrid","dgrid/Tree","dgrid/Editor", "dgrid/Keyb
是否可以创建一个 dgrid 查询来在多个列上搜索正则表达式字符串?通常语法指定 {column1: "foo", column2: "foo"} 但它会查找 column1 和 column2 都是
dGrid 中是否有一种方法可以让您滚动到表中的特定列,我有一个可以水平滚动的表,我想知道是否有可能执行类似的操作: myGrid.scrollToColumn(someColumnToScrollT
我正在基于一个数据源创建一个 dgrid,该数据源具有一个地址和两列 bool 值,用于标识记录中地址的类型,邮政地址或公司地址。 我想根据两个 bool 列在另一列(地址类型)中显示 bool 值的
我有一个 dgrid,它只有一列数据(名称),但是我尝试对此列进行更新,并且它不断插入新记录。我知道它会将输入的信息视为新记录,因为 dgrid 中的 idProperty 是 = 名称。我怎样才能克
我正在尝试制作一个可编辑的网格。我希望用户能够在需要时喜欢更多行。我尝试查看他们的文档,但效果并不明显。 另外,grid.newRow() 是做什么的? 最佳答案 如果您尝试添加新行,您始终可以先向底
我有一个 dgrid 在包含许多列的表中显示数据。 dgrid 的默认布局导致所有列在页面上可见,这意味着它们被折叠并且无法看到每个列中的完整标题或数据。 我想显示所有展开的列,以查看其中包含的所有数
我目前正在尝试创建选项卡导航以在 d 网格(dojo 网格)中的单元格之间切换。 我有一个网格,其所有单元格均可编辑,我想创建一个新事件以使用 Tab 键在单元格之间导航。 我尝试了一些方法,例如:
如何更改 grid.js::_setSort() 的默认行为为了在排序所涉及的所有列的标题中正确显示排序标准(向上/向下箭头)?目前,_setSort()只处理传递给 grid.set("sort")
如何根据某些运行时参数隐藏 dgrid (gridFromHtml) 中的完整列? 假设参数的值为真,我应该能够显示一些列,如果值为假,那么我应该能够隐藏同一列。 最佳答案 使用 grid.style
是否可以不区分大小写进行排序? 例如,默认排序显示如下: Awesomeman adam beyonce 但是,我想这样排序: adam Awesomeman beyonce 是否可以轻松覆盖灵敏度?
我是一名优秀的程序员,十分优秀!