当TextBox里面的Dojotoolkit store.GetValue

时间:2014-08-11 11:55:38

标签: javascript dojo dojox.grid.datagrid dojox.grid

我对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);
}

名称变量设置正确但我从数量中得不到任何东西。 我猜我会得到TextBox,但我什么也得不到。

有人知道如何访问商店的字段吗?

1 个答案:

答案 0 :(得分:1)

我认为因为Textbox是一个小部件,你可以通过为它设置id并通过

获取元素来访问它的值。
dijit.byId("YourTB").get('value');

此致,Miriam