我有一个关于dojotoolkit的问题。我有一个DataGrid,想要在它里面得到一个值。棘手的部分是,这个值是a文本框。
DataGrid的结构是这样的:
grid = new dojox.grid.DataGrid({
store: store,
structure: [
{
name: "Quantity", field: "Quantity", width: "30px",
formatter: function(item)
{
var tb = new dijit.form.TextBox(
{
name: "quantity",
value: "1",
placeHolder: "quantity",
});
return tb;
}
},
{ name: "Value", field: "Value", width: "auto"}
]
}, "bGrid");
我还有一个按钮,可以点击。如果单击按钮,则执行以下函数:
myClass.prototype.Test = function Test(tItem)
{
var item = tItem;
var val = grid.getItem(item.value); //Value in this case is an integer refering to the position of my item in the grid
var quantity;
var name;
if(val!==null){
var store = grid.store;
quantity = store.getValue(val, 'Quantity');
name = store.getValue(val, 'Value');
}
console.log("Quantity "+quantity+ " Name: "+name);
}
name变量设置正确,但我没有从quantity中得到任何信息。我想我会得到文本框,但我什么也没有收到。
有谁知道如何访问商店的字段吗?
我认为因为文本框是一个小部件你可以通过为它设置id来访问它的值并通过
获取元素dijit.byId("YourTB").get('value');
问候,米里亚姆