Page 1 of 2 12 LastLast
Results 1 to 10 of 16

Thread: 为什么 你们演示的 这段代码有错误

  1. #1

    Question 为什么 你们演示的 这段代码有错误

    为什么我演示的什么内容都没有出现
    Code:
         Ext.onReady(function() {   
          var myData = [   
              ['Apple',29.89,0.24,0.81,'9/1 12:00am'],   
              ['Ext',83.81,0.28,0.34,'9/12 12:00am'],   
              ['Google',71.72,0.02,0.03,'10/1 12:00am'],   
              ['Microsoft',52.55,0.01,0.02,'7/4 12:00am'],   
              ['Yahoo!',29.01,0.42,1.47,'5/22 12:00am']   
          ];   
          var ds = new Ext.data.Store({   
              proxy: new Ext.data.MemoryProxy(myData),   
              reader: new Ext.data.ArrayReader({id: 0}, [   
                  {name: 'company'},   
                  {name: 'price', type: 'float'},   
                  {name: 'change', type: 'float'},   
                  {name: 'pctChange', type: 'float'},   
                  {name: 'lastChange', type: 'date', dateFormat: 'n/j h:ia'}    
              ])   
          });   
          ds.load();   
          var colModel = new Ext.grid.ColumnModel([   
              {header: "Company", width: 120, sortable: true, dataIndex: 'company'},   
              {header: "Price", width: 90, sortable: true, dataIndex: 'price'},   
              {header: "Change", width: 90, sortable: true, dataIndex: 'change'},   
              {header: "% Change", width: 90, sortable: true, dataIndex: 'pctChange'},   
              {header: "Last Updated", width: 120, sortable: true, renderer: Ext.util.Format.dateRenderer('m/d/Y'), dataIndex: 'lastChange'}   
          ]);   
          var grid = new Ext.grid.Grid('grid-example', {ds: ds, cm: colModel});   
          grid.render();   
          grid.getSelectionModel().selectFirstRow();});
    Last edited by mystix; 13 Oct 2007 at 9:32 AM. Reason: use [code][/code] tags

  2. #2

    Default

    老大,你在这里写中文谁看的明白阿?

    你要仔细看一下几个.js和.css文件的路径,可能是这里出了问题。

  3. #3

    Default

    你不是能看懂吗??

    呵呵

    网页 上的好几个css找不到,不知道是不是这种原因 但是 路径明明对啊

    可是也出不来

  4. #4

    Default

    css找不到当然就出不来了

  5. #5

    Default

    代码没有问题,是你做的问题,再检查一下吧
    不知道有没有人实现了在grid里新增了一行后,在新增的行里添加了一个删除的按扭,我点这个删除就可以把这新增的一行删除.我在1.1里实现了这个功能,不过在2.0里做不出来.不知道是怎么回事.有知道的人请指点一下.

  6. #6

    Default

    请教followmephoe怎么做的Grid的数据分页,我刚接触Ext,想用2.0中的分页,在找了些例子代码后,现在Ext的前台已经基本了解,但本人后台只会ASP,好像目前只看到PHP为后台的例子,不知道后台能否用ASP啊?先谢过了!

  7. #7

    Default

    不好意思,我不会用asp.
    我只会jsp的分页.我是用hibernate做的分页.
    不过我可以给你讲下jsp分页的方法.
    你首先可以服务端得到两个参数,一个是start参数(当前显示页),一个是limit(最大显示多少条数据)这个参数,你通过request.getAttribute("");
    这个方法可以取到.然后就是在服务端分页了,最后把数据生成json就可以了.

  8. #8

    Default

    感谢followmephoe的恢复,请问你用JSP生成的格式是什么样的?

    我在extjs.com上找到的那个例子(http://extjs.com/forum/topics-browse-remote.php)的php文件的格式是这样的:
    {"totalCount":"14373","topics":[{"threadid":"14824","forumid":"6","forumtitle":"Open Discussion","title":"Development platform pickle.","author":"SeaSharp","lastposter":"SeaSharp","lastpost":"1192189274","excerpt":"I am trying to develop my server-side code as a self-hosted C# WCF console application. This has been tested directly with URLs and the correct JSON responses are generated. However I don't think a self-hosted wcf application can serve up the static content since it is not a general purpose web serv...","replycount":"5"}...]}

    但是我把相同的格式放到asp的文件里就会报错,说是缺少";",到网上找了一下,说是grid提交分页数据的时候后面还会自动跟随一个可以说是标识的字段callback=stcCallback1001所以以上的内容就要在外面加上一个stcCallback1001(...),但这依然是在php中的解答,我照搬到asp中还是不行,不知道followmephoe得生成代码是怎么样的。

  9. #9

    Default

    这个是json的数据格式,totalcount表示总共有多少条数据,其它的是要显示的数据.
    这个你还是先看看什么是json吧,要是你没有这个概念的话也很难理解我说的是什么意思.

  10. #10

    Default

    感谢followmephoe的回复,Ext.data.JsonReader我知道,这个问题已经解决,但是,Ext.data.ScriptTagProxy调用本地数据时会使IE运行时错误,这应该是HtmlXML的问题,我以前用到HtmlXml是出过类似的问题,可能是非异步处理的问题,而我使用Ext.data.HttpProxy调用本地相同文件的数据时却没有任何反应,同样的文件用Ext.data.ScriptTagProxy在异地获取时就是好的,而Ext.data.HttpProxy却没有任何反应,请教followmephoe看看是什么问题.

    关键是我英语不好,很难把这个问题翻成英文去问老外,还请followmephoe多多帮忙,先谢过了!

    这是两种情况的截图




    以下是我的代码
    JS文件
    Code:
    Ext.onReady(function(){
        Ext.state.Manager.setProvider(new Ext.state.CookieProvider());
    
        var ds = new Ext.data.Store({
            proxy: new Ext.data.HttpProxy({ //就是这里,如果换成Ext.data.ScriptTagProxy从另外一台服务器获取同样001.asp文件是正常的.
                url: '001.asp'
            }),
            reader: new Ext.data.JsonReader({
                root: 'topics',
                totalProperty: 'totalCount',
                id: 'threadid'
            }, [
                'title', 'forumtitle', 'forumid', 'author',
                {name: 'replycount', type: 'int'},
                {name: 'lastpost', mapping: 'lastpost', type: 'date', dateFormat: 'timestamp'},
                'lastposter'
            ]),
    
            remoteSort: true
        });
        ds.setDefaultSort('lastpost', 'desc');
    
        function renderLast(value, p, r){
            return String.format('{0}', value.dateFormat('M j, Y, g:i a'));
        }
    
        var sm = new Ext.grid.CheckboxSelectionModel();
        var expander = new Ext.grid.RowExpander({
            tpl : new Ext.Template(
                '<p><b>Company:'
            )
        });
        var cm = new Ext.grid.ColumnModel([
            new Ext.grid.RowNumberer(),
            {
               id: 'topic',
               header: "标题",
               dataIndex: 'title',
               width: 420
            },{
               header: "作者",
               dataIndex: 'author',
               width: 100,
               hidden: true
            },{
               header: "回复",
               dataIndex: 'replycount',
               width: 70,
               align: 'right'
            },{
               id: 'last',
               header: "更新时间",
               dataIndex: 'lastpost',
               width: 150,
               renderer: renderLast
            }]);
    
        cm.defaultSortable = true;
    
        var grid = new Ext.grid.GridPanel({
            el:'topic-grid',
            width:700,
            height:500,
            title:'ExtJS带分页的表格',
            store: ds,
            cm: cm,
            frame:true,
            trackMouseOver:true,
            loadMask: true,
            viewConfig: {
                forceFit:true,
                enableRowBody:true,
                showPreview:true
            },
            bbar: new Ext.PagingToolbar({
                pageSize: 25,
                store: ds,
                displayInfo: true,
                displayMsg: '本页显示 {0} - {1} 共计 {2}',
                emptyMsg: "没有任何数据"
            })
        });
    
        grid.render();
    
        ds.load({params:{start:0, limit:25, forumId: 4}});
    
        function toggleDetails(btn, pressed){
            var view = grid.getView();
            view.showPreview = pressed;
            view.refresh();
        }
        
    });

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •