Javascript 单击事件时数据未显示在dojox.Data.Datagrid中。

Javascript 单击事件时数据未显示在dojox.Data.Datagrid中。,javascript,jquery,datagrid,datagridview,dojox.grid.datagrid,Javascript,Jquery,Datagrid,Datagridview,Dojox.grid.datagrid,我想在数据网格中显示数据。URL使用$.get方法作为JSon类型检索数据。我没有得到任何错误。但也没有得到数据网格。下面是我的脚本代码:: <script type="text/javascript"> $("document").ready(function(){ $('#contentpaneid').bind('click', getInfoFromServer); function getInfoFromServer(){ $.get("ht

我想在数据网格中显示数据。URL使用$.get方法作为JSon类型检索数据。我没有得到任何错误。但也没有得到数据网格。下面是我的脚本代码::

<script type="text/javascript">
$("document").ready(function(){
    $('#contentpaneid').bind('click', getInfoFromServer);
    function getInfoFromServer(){
        $.get("http://localhost:8080/2_8_2012/jsp/GetJson.jsp?random=" + new Date().getTime(), function (result) {
            success:postToPage(result),
            alert('Load was performed.');
            },"Json");

    function postToPage(data){
    alert(data);    
    var storedata = {
        identifier:"ID",
        items: data //[{"ID":1,"Names":"Shantanu","Email":"shantanu.tomar@gmail.com"},{"ID":2,"Names":"Mayur","Email":"mayur.sharma@gmail.com"},{"ID":3,"Names":"Rohit"},{"ID":21,"Names":"Rakesh","Email":"askjhjk"}] 

};

    var store1 = new dojo.data.ItemFileWriteStore({data: storedata}) ;
    var gridStructure =[[

                          { field: "ID",
                                name: "ID_Emp",
                                width: "20%",
                                classes:"firstName"
                          },
                          {
                              field: "Names",
                              name: "Name",
                              width: "20%",
                              classes: "firstName"
                          },
                          { field: "Email",
                                name: "Mail",
                                width: "20%",
                                classes:"firstName"
                          }

                    ]
              ];

    var grid = new dojox.grid.DataGrid({

        store: store1,
        structure: gridStructure,
        rowSelector: '30px',
        selectionMode: "single",
        autoHeight:true,
        columnReordering:true

        },'gridDiv');


    grid.startup();
    dojo.connect(grid, "onSelectionChanged", grid, function(){
                var items = grid.selection.getSelected();



            //  do something with the selected items
                dojo.forEach(items, function(item){
                    var v = grid.store.getValue(item, "Names");

                    function showDialog() {
                        dojo.require('dijit.Tooltip');
                        dijit.byId("terms").show();
                    }

                    showDialog();
                    }, grid);

            });


            dojo.connect(grid, "onCellClick", grid, function sendmail(){
                var items = grid.selection.getSelected();

                dojo.forEach(items, function(item){
                    var v1 = grid.store.getValue(item, "Email");       
                    alert(v1);
                    request.setAttribute("variablemail", v1);
            });
    });

};
};
});
</script>
当以文本形式检索数据时,输出为:

[{"ID":1,"Names":"Shantanu","Email":"shantanu.tomar@gmail.com"},{"ID":2,"Names":"Mayur","Email":"mayur.sharma@gmail.com"},{"ID":3,"Names":"Rohit"},{"ID":21,"Names":"Rakesh","Email":"askjhjk"},{"ID":22,"Names":"Hello"}]
现在,当我更新数据时,我会收到数据警报ryt。i、 alertdata my$中的e值正在更新。get函数工作正常。并收到“已执行加载”消息的警报。但网格并没有显示出来。这不是数据,但网格也没有显示出来。单击时,仅显示警报框。就这样。我哪里出错了?我应该以文本或JSON的形式检索数据,以便将值正确地传递给项:。请帮忙。我希望单击事件时网格根据数据库中的更改刷新自身。谢谢

变化

<div data-dojo-id="gridDiv"...

注意,数据dojoid用于创建保存小部件的全局JS变量。 在您的情况下,您正在填充datagrid,并要求dojo用datagrid替换id为gridDiv的DOM节点。由于dojo无法找到这样的节点,因此您无法看到datagrid

[{"ID":1,"Names":"Shantanu","Email":"shantanu.tomar@gmail.com"},{"ID":2,"Names":"Mayur","Email":"mayur.sharma@gmail.com"},{"ID":3,"Names":"Rohit"},{"ID":21,"Names":"Rakesh","Email":"askjhjk"},{"ID":22,"Names":"Hello"}]
<div data-dojo-id="gridDiv"...
<div id="gridDiv" ...