Mega Code Archive

 
Categories / JavaScript DHTML / Smartclient
 

Dependent selection

<!-- 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.com) 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.com/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/system/modules/ISC_Calendar.js></SCRIPT>   <SCRIPT SRC=isomorphic/skins/standard/load_skin.js></SCRIPT> </HEAD><BODY BGCOLOR='silver'> <SCRIPT> // --------------------------------------------------------------------------------------- // Local Data Example isc.Label.create({     contents: "Local Data",     width: "90%",     height: 25,     autoDraw: true,     baseStyle: "exampleSeparator" }); isc.ListGrid.create({     top: 40,     width: 500,     height: 200,     canEdit:true,     autoDraw: true,     data:[         {employee:"Richard Smith", division:"Marketing", department:"Community Relations"},         {employee:"Sam Edwards", division:"Services", department:"Support"}     ],     fields: [         {name:"employee", title:"Name", canEdit:false},         {name: "division",          title: "Division",          editorType: "select",          valueMap: ["Marketing", "Sales", "Manufacturing", "Services"],          // Calling 'setValueMap()' will force the 'getEditorValueMap' method to be          // re-evaluated for the department field          changed:"item.grid.setValueMap('department')"         },         {name: "department",          title: "Department",          editorType: "select",          getEditorValueMap : function (values, field, grid) {              var division = values.division;              return field.departments[division];          },          departments: {             Marketing: ["Advertising", "Community Relations"],             Sales: ["Channel Sales", "Direct Sales"],             Manufacturing: ["Design", "Development", "QA"],             Services: ["Support", "Consulting"]          },          editorProperties:{              addUnknownValues:false          }         }     ] }); // --------------------------------------------------------------------------------------- // Remote Data Example isc.Label.create({     contents: "Remote Data",     top: 280,     width: "90%",     height: 25,     autoDraw: true,     baseStyle: "exampleSeparator" }); isc.ListGrid.create({     top: 320,     width: 500,     height:200,     canEdit:true,     autoDraw: true,     ID:"orderList",          fields: [         {name:"quantity", title:"Qty", type:"integer", width:30},         {name:"categoryName", title:"Category", editorType:"select",           changed:"this.grid.clearEditValue(this.rowNum, 'itemName');",          editorProperties : { optionDataSource:"supplyCategory" }         },         {name: "itemName", title:"Item", editorType: "select",           editorProperties:{              optionDataSource:"supplyItem",               getPickListFilterCriteria : function () {                 var category = this.grid.getEditedCell(this.rowNum, "categoryName");                 return {category:category};              }          }         }              ] }); isc.IButton.create({     top: 535,     width: 110,     title:"Order New Item",     click:"orderList.startEditingNew({quantity:1})" }); </SCRIPT> </BODY> </HTML>