JavaScript DHTML/SmartClient/XJSONDataSource

Материал из Web эксперт
Перейти к: навигация, поиск

Use XJSONDataSource

 
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules 
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are 
licensed under the terms of the GNU Lesser General Public License, version 3. 
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL, 
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection 
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge, 
but may not be used as part of screen designs separate from SmartClient components without a purchase 
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even 
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General 
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008. 

-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->

<HTML><HEAD>
  <SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
    <SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
    <SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
    <SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
    <SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
    <SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
    <SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
  <SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="#e0e0e0" MARGINHEIGHT=0 MARGINWIDTH=0 LEFTMARGIN=0 TOPMARGIN=0>
<TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=5 BORDER=0><TR><TD CLASS=pageHeader BGCOLOR=WHITE>
  JSON Yahoo Image Search Example
</TD></TR></TABLE><TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=0 BORDER=0><TR>
<TD BGCOLOR=336666><IMG SRC=images/blank.gif WIDTH=1 HEIGHT=4></TD></TR></TABLE>
<a href="http://developer.yahoo.net/about"> 
<img src="http://us.dev1.yimg.ru/us.yimg.ru/i/us/nt/bdg/websrv_88_1.gif" border="0"> 
</a> 
<!--------------------------
  Example code starts here
---------------------------->
<SCRIPT>
isc.XJSONDataSource.create({
    ID:"yahooImageSearch",
    dataURL:"http://api.search.yahoo.ru/ImageSearchService/V1/imageSearch?appid=YahooDemo&output=json",
    recordXPath : "/ResultSet/Result",
    fields:[
        { name : "Thumbnail", valueXPath:"Thumbnail/Url", type:"image", 
          imageWidth:"imageWidth", imageHeight:"imageHeight",
          width:150 },
        { name : "imageWidth", valueXPath:"Thumbnail/Width", type:"integer",
          hidden:true },
        { name : "imageHeight", valueXPath:"Thumbnail/Height", type:"integer",
          hidden:true },
        { name : "Title" },
        { name : "Summary" },
        { name : "FullImage", title:"Full Image", type:"link", valueXPath:"Url", target:"_blank" }
    ]
});
isc.SearchForm.create({
    ID:"searchForm",
    left:100,
    top:40,
    numCols:3,
    items : [
        { name:"query", title:"Query", type:"text", defaultValue:"snowboarding" },
        { type:"button", title:"Search", click:"fetch()", startRow:false }
    ]
});
isc.ListGrid.create({
    ID:"imageGrid",
    left:20, top:80,
    width:"80%",
    height:500,
    wrapCells:true,
    fixedRecordHeights:false,
    showAllRecords:true,
    alternateRecordStyles:true,
    dataSource:"yahooImageSearch"
});
function fetch() {
    imageGrid.fetchData(searchForm.getValuesAsCriteria());
}
fetch();
</SCRIPT>
</BODY>
</HTML>