佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > jquery repeater 模仿 Google 展開頁面預覽子視圖

jquery repeater 模仿 Google 展開頁面預覽子視圖

熱門標簽:電子圍欄 團購網(wǎng)站 Mysql連接數(shù)設(shè)置 阿里云 科大訊飛語音識別系統(tǒng) Linux服務器 銀行業(yè)務 服務器配置
如果, 有不明白的問題, 請先閱讀 30 分鐘掌握無刷新 Repeater.

示例代碼下載: http://zsharedcode.googlecode.com/files/JQueryElementDemo.rar

本文將詳細的講解 Repeater 控件中如何使用子視圖, 目錄如下:

* 準備
* 定義子視圖樣本
* 切換子視圖狀態(tài)
* 定義子視圖容器

示例圖片:

準備

請參照 http://code.google.com/p/zsharedcode/wiki/JQueryElementRepeaterDoc 中的準備.

定義子視圖樣本
顯示在 repeater 中的 repeater 被稱為子視圖, 每一個子視圖都是子視圖樣本的副本, 并根據(jù)條件來展示不同的數(shù)據(jù). 子視圖樣本的定義沒有特別之處, 比如:
復制代碼 代碼如下:

je:Repeater ID="子視圖 ID>" runat="server"
FilterField="子視圖搜索字段>">
/je:Repeater>
je:Repeater ID="pictureRepeater" runat="server"
FilterField="['url']"
FillAsync-Url="webservice.asmx"
FillAsync-MethodName="GetGooglePicture">
ItemTemplate>
div>
span class="url">#{url}/span>
br />
br />
#{picture}
/div>
/ItemTemplate>
/je:Repeater>

大多數(shù)情況下, 需要為子視圖樣本定義 FilterField 屬性, 也就是搜索子視圖數(shù)據(jù)所用到的字段或條件, 上面的代碼中, 我們添加了 url 作為條件, 那么后臺返回數(shù)據(jù)的代碼可以這樣編寫:
復制代碼 代碼如下:

[WebMethod]
public SortedDictionarystring, object> GetGooglePicture ( string url )
{
// 返回 JSON
}

由于, 只返回一行數(shù)據(jù), 因此不必添加 pageindex 和 pagesize 參數(shù).

關(guān)于如何返回 JSON, 請參考 使用 ASP.NET 一般處理程序或 WebService 返回 JSON, 本示例所有代碼為在 .NET 4.0 下編寫.
切換子視圖狀態(tài)
如果需要在 Repeater 中控制子視圖切換, 關(guān)閉和打開, 可以使用 shiftview, collapseview, expandview 三個函數(shù), 比如:
復制代碼 代碼如下:

// je-javascript 事件名>="shiftview,'子視圖 ID>'[,子視圖搜索字段值n>]"
div id="list">
je:Repeater ID="googleRepeater" runat="server"
Selector="'#list'" PageSize="2" IsVariable="true"
FillAsync-Url="webservice.asmx"
FillAsync-MethodName="SearchGoogle">
ItemTemplate>
div class="picture">
div
je-button="label='更多';"
je-onclick="shiftview,'pictureRepeater','#{url}'">
/div>
div je-id="pictureRepeater" style="display: none;">
/div>
/div>
/ItemTemplate>
/je:Repeater>
/div>

以 shiftview 為例, 第一個參數(shù)為子視圖的 ID, 之后的參數(shù)為用于搜索子視圖數(shù)據(jù)的條件, 示例中將字段 url 作為參數(shù), 對應了子視圖樣本 FilterField 屬性中的 url. 如果有更多的條件, 繼續(xù)添加即可, 順序需要和子視圖樣本 FilterField 屬性中條件一樣.
expandview 方法和 shiftview 是類似的, 不同的 expandview 是打開子視圖, 而 shiftview 是切換子視圖的打開狀態(tài).
而 collapseview 方法是關(guān)閉子視圖, 不需要傳遞條件.
默認情況下, 當子視圖首次被打開時, 將自動調(diào)用 fill 方法來填充數(shù)據(jù), 而之后的打開顯示現(xiàn)存的數(shù)據(jù), 不再刷新.
定義子視圖容器
除了定義子視圖樣本之外, 還需要在行模板中定義子視圖容器, 在剛才的代碼中, 有這樣一段:
復制代碼 代碼如下:

// je-id="子視圖 ID>"
ItemTemplate>
div class="picture">
div je-id="pictureRepeater" style="display: none;">
/div>
/div>
/ItemTemplate>

通過 je-id 綁定為子視圖 ID, 即可將元素綁定為子視圖的容器, 而子視圖將顯示在目標容器中.
子視圖默認為關(guān)閉狀態(tài), 因此代碼中通過 style="display: none;" 使子視圖容器在開始時隱藏.

JQueryElement 是開源共享的代碼, 可以在 http://code.google.com/p/zsharedcode/wiki/Download 頁面下載 dll 或者是源代碼.

實際過程演示: http://www.tudou.com/programs/view/uVx2BBMHgOQ/, 建議全屏觀看.

歡迎訪問 panzer 開源項目, http://zsharedcode.googlecode.com/ , 其中包含了 IEBrowser 控制 WebBrowser 執(zhí)行各種 js 和 jQuery 腳本以及錄制功能 和 jQueryUI 的 Asp.net 控件 JQueryElement.
您可能感興趣的文章:
  • Jquery圖片延遲加載插件jquery.lazyload.js的使用方法
  • Jquery的each里用return true或false代替break或continue
  • jQuery基于當前元素進行下一步的遍歷
  • jquery 表格排序、實時搜索表格內(nèi)容(附圖)
  • jQuery實現(xiàn)鼠標經(jīng)過圖片預覽大圖效果
  • jquery預覽圖片實現(xiàn)鼠標放上去顯示實際大小
  • jquery實現(xiàn)兼容瀏覽器的圖片上傳本地預覽功能
  • jQuery實現(xiàn)圖片放大預覽實現(xiàn)原理及代碼
  • jquery 圖片上傳按比例預覽插件集合
  • 基于jquery實現(xiàn)的上傳圖片及圖片大小驗證、圖片預覽效果代碼
  • jquery實現(xiàn)預覽提交的表單代碼分享

標簽:江蘇 衡水 萍鄉(xiāng) 廣元 大理 衢州 蚌埠 棗莊

巨人網(wǎng)絡(luò)通訊聲明:本文標題《jquery repeater 模仿 Google 展開頁面預覽子視圖》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    天镇县| 班玛县| 汨罗市| 南郑县| 子长县| 张家口市| 富川| 五寨县| 石门县| 辽源市| 开平市| 突泉县| 姚安县| 泰来县| 静宁县| 浙江省| 思南县| 宜良县| 鄯善县| 沛县| 崇明县| 宁都县| 隆安县| 常德市| 郸城县| 虹口区| 南通市| 沙田区| 赤城县| 阆中市| 奉新县| 北安市| 皋兰县| 江陵县| 台湾省| 苍山县| 安多县| 新乐市| 盖州市| 莱州市| 泌阳县|