forum-search.js
上传用户:shuoshiled
上传日期:2018-01-28
资源大小:10124k
文件大小:2k
源码类别:

中间件编程

开发平台:

JavaScript

  1. /*!
  2.  * Ext JS Library 3.0.0
  3.  * Copyright(c) 2006-2009 Ext JS, LLC
  4.  * licensing@extjs.com
  5.  * http://www.extjs.com/license
  6.  */
  7. Ext.onReady(function(){
  8.     var ds = new Ext.data.Store({
  9.         proxy: new Ext.data.ScriptTagProxy({
  10.             url: 'http://extjs.com/forum/topics-remote.php'
  11.         }),
  12.         reader: new Ext.data.JsonReader({
  13.             root: 'topics',
  14.             totalProperty: 'totalCount',
  15.             id: 'post_id'
  16.         }, [
  17.             {name: 'title', mapping: 'topic_title'},
  18.             {name: 'topicId', mapping: 'topic_id'},
  19.             {name: 'author', mapping: 'author'},
  20.             {name: 'lastPost', mapping: 'post_time', type: 'date', dateFormat: 'timestamp'},
  21.             {name: 'excerpt', mapping: 'post_text'}
  22.         ])
  23.     });
  24.     // Custom rendering Template
  25.     var resultTpl = new Ext.XTemplate(
  26.         '<tpl for="."><div class="search-item">',
  27.             '<h3><span>{lastPost:date("M j, Y")}<br />by {author}</span>{title}</h3>',
  28.             '{excerpt}',
  29.         '</div></tpl>'
  30.     );
  31.     
  32.     var search = new Ext.form.ComboBox({
  33.         store: ds,
  34.         displayField:'title',
  35.         typeAhead: false,
  36.         loadingText: 'Searching...',
  37.         width: 570,
  38.         pageSize:10,
  39.         hideTrigger:true,
  40.         tpl: resultTpl,
  41.         applyTo: 'search',
  42.         itemSelector: 'div.search-item',
  43.         onSelect: function(record){ // override default onSelect to do redirect
  44.             window.location =
  45.                 String.format('http://extjs.com/forum/showthread.php?t={0}&p={1}', record.data.topicId, record.id);
  46.         }
  47.     });
  48. });