FineUI 官方论坛

标题: 关于DataView控件的问题,求三石兄帮忙 [打印本页]

作者: Fatesy    时间: 2012-6-19 12:41
标题: 关于DataView控件的问题,求三石兄帮忙
本帖最后由 Fatesy 于 2012-6-19 12:52 编辑

DataView在有一些场合下非常必要,最近项目中需要实现类似的功能,extjs已经提供了,可惜extaspnet还没封装,只能尝试用extjs实现了,最后还是实现了。
本来想修改extaspnet的源码,直接把控件嵌进extaspnet内部.但是是由于对extaspnet的框架不是非常理解,花费了很多精力依然无果,只能求三石兄帮忙了。
[attach]699[/attach]
关键的代码如下

  1. Ext.onReady(function () {
  2.     var myData = [
  3.         ['dance_fever.jpg', 'images/dance_fever.jpg', 71.72, '9/1 12:00am'],
  4.         ['gangster_zack.jpg', 'images/gangster_zack.jpg', 29.01, '9/1 12:00am'],
  5.         ['kids_hug2.jpg', 'images/kids_hug2.jpg', 83.81, '9/1 12:00am'],
  6.         ['kids_hug.jpg', 'images/kids_hug.jpg', 29.01, '9/1 12:00am'],
  7.         ['sara_pink.jpg', 'images/sara_pink.jpg', 29.01, '9/1 12:00am'],
  8.         ['sara_pumpkin.jpg', 'images/sara_pumpkin.jpg', 29.01, '9/1 12:00am'],
  9.         ['sara_smile.jpg', 'images/sara_smile.jpg', 29.01, '9/1 12:00am'],
  10.         ['up_to_something.jpg', 'images/up_to_something.jpg', 29.01, '9/1 12:00am'],
  11.         ['zack.jpg', 'images/zack.jpg', 29.01, '9/1 12:00am'],
  12.         ['zack_dress.jpg', 'images/zack_dress.jpg', 29.01, '9/1 12:00am'],
  13.         ['zack_hat.jpg', 'images/zack_hat.jpg', 29.01, '9/1 12:00am'],
  14.         ['zack_sink.jpg', 'images/zack_sink.jpg', 29.01, '9/1 12:00am'],
  15.         ['zacks_grill.jpg', 'images/zacks_grill.jpg', 29.01, '9/1 12:00am']
  16.     ];
  17.     var store = new Ext.data.SimpleStore({
  18.         fields: [
  19.            { name: 'name' },
  20.            { name: 'url' },
  21.            { name: 'size', type: 'float' },
  22.            { name: 'lastmod', type: 'date', dateFormat: 'n/j h:ia' }
  23.         ]
  24.     });
  25.     store.loadData(myData);
  26.     var tpl = new Ext.XTemplate(
  27.   '<tpl for=".">',
  28.             '<div class="thumb-wrap" id="{name}">',
  29.       '<div class="thumb"><img src="{url}" title="{name}"></div>',
  30.       '<span  >{shortName}</span></div>',
  31.         '</tpl>',
  32.         '<div class="x-clear"></div>'
  33. );
  34.     var panel = new Ext.Panel({
  35.         id:'images-view',
  36.         frame:true,
  37.         width:215,
  38.         collapsible:true,
  39.         layout:'fit',
  40.         title:'Simple DataView (0 items selected)',
  41.         items: new Ext.DataView({
  42.             store: store,
  43.             tpl: tpl,
  44.             overClass: 'x-view-selected',
  45.             itemSelector:'div.thumb-wrap',
  46.             emptyText: 'No images to display',
  47.             prepareData: function(data){
  48.                 data.shortName = Ext.util.Format.ellipsis(data.name, 15);
  49.                 data.sizeString = Ext.util.Format.fileSize(data.size);
  50.                 data.dateString = data.lastmod.format("m/d/Y g:i a");
  51.                 return data;
  52.             },
  53.             
  54.             listeners: {      
  55.                click : {
  56.                     fn : function( dataView, index, node, e) {
  57.                          var record = dataView.getRecord(node);
  58.                          alert(record.get("name"));
  59.                     }
  60.                 }
  61.             }
  62.         })
  63.     });
  64.     panel.render(document.body);
  65. });
复制代码





欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/) Powered by Discuz! X3.4