亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? item.js

?? 圖書管理系統(tǒng)包括圖書的增加、刪除、修改等功能
?? JS
字號:
/*	Copyright (c) 2004-2006, The Dojo Foundation	All Rights Reserved.	Licensed under the Academic Free License version 2.1 or above OR the	modified BSD license. For more information on Dojo licensing, see:		http://dojotoolkit.org/community/licensing.shtml*/dojo.provide("dojo.data.Item");dojo.require("dojo.data.Observable");dojo.require("dojo.data.Value");dojo.require("dojo.lang.common");dojo.require("dojo.lang.assert");// -------------------------------------------------------------------// Constructor// -------------------------------------------------------------------dojo.data.Item = function(/* dojo.data.provider.Base */ dataProvider) {	/**	 * summary:	 * An Item has attributes and attribute values, sort of like 	 * a record in a database, or a 'struct' in C.  Instances of	 * the Item class know how to store and retrieve their	 * attribute values.	 */	dojo.lang.assertType(dataProvider, [dojo.data.provider.Base, "optional"]);	dojo.data.Observable.call(this);	this._dataProvider = dataProvider;	this._dictionaryOfAttributeValues = {};};dojo.inherits(dojo.data.Item, dojo.data.Observable);// -------------------------------------------------------------------// Public class methods// -------------------------------------------------------------------dojo.data.Item.compare = function(/* dojo.data.Item */ itemOne, /* dojo.data.Item */ itemTwo) {	/**	 * summary:	 * Given two Items to compare, this method returns 0, 1, or -1.	 * This method is designed to be used by sorting routines, like	 * the JavaScript built-in Array sort() method.	 * 	 * Example:	 * <pre>	 *   var a = dataProvider.newItem("kermit");	 *   var b = dataProvider.newItem("elmo");	 *   var c = dataProvider.newItem("grover");	 *   var array = new Array(a, b, c);	 *   array.sort(dojo.data.Item.compare);	 * </pre>	 */	dojo.lang.assertType(itemOne, dojo.data.Item);	if (!dojo.lang.isOfType(itemTwo, dojo.data.Item)) {		return -1;	}	var nameOne = itemOne.getName();	var nameTwo = itemTwo.getName();	if (nameOne == nameTwo) {		var attributeArrayOne = itemOne.getAttributes();		var attributeArrayTwo = itemTwo.getAttributes();		if (attributeArrayOne.length != attributeArrayTwo.length) {			if (attributeArrayOne.length > attributeArrayTwo.length) {				return 1; 			} else {				return -1;			}		}		for (var i in attributeArrayOne) {			var attribute = attributeArrayOne[i];			var arrayOfValuesOne = itemOne.getValues(attribute);			var arrayOfValuesTwo = itemTwo.getValues(attribute);			dojo.lang.assert(arrayOfValuesOne && (arrayOfValuesOne.length > 0));			if (!arrayOfValuesTwo) {				return 1;			}			if (arrayOfValuesOne.length != arrayOfValuesTwo.length) {				if (arrayOfValuesOne.length > arrayOfValuesTwo.length) {					return 1; 				} else {					return -1;				}			}			for (var j in arrayOfValuesOne) {				var value = arrayOfValuesOne[j];				if (!itemTwo.hasAttributeValue(value)) {					return 1;				}			}			return 0;		}	} else {		if (nameOne > nameTwo) {			return 1; 		} else {			return -1;  // 0, 1, or -1		}	}};// -------------------------------------------------------------------// Public instance methods// -------------------------------------------------------------------dojo.data.Item.prototype.toString = function() {	/**	 * Returns a simple string representation of the item.	 */	var arrayOfStrings = [];	var attributes = this.getAttributes();	for (var i in attributes) {		var attribute = attributes[i];		var arrayOfValues = this.getValues(attribute);		var valueString;		if (arrayOfValues.length == 1) {			valueString = arrayOfValues[0];		} else {			valueString = '[';			valueString += arrayOfValues.join(', ');			valueString += ']';		}		arrayOfStrings.push('  ' + attribute + ': ' + valueString);	}	var returnString = '{ ';	returnString += arrayOfStrings.join(',\n');	returnString += ' }';	return returnString; // string};dojo.data.Item.prototype.compare = function(/* dojo.data.Item */ otherItem) {	/**	 * summary: Compares this Item to another Item, and returns 0, 1, or -1.	 */ 	return dojo.data.Item.compare(this, otherItem); // 0, 1, or -1};dojo.data.Item.prototype.isEqual = function(/* dojo.data.Item */ otherItem) {	/**	 * summary: Returns true if this Item is equal to the otherItem, or false otherwise.	 */	return (this.compare(otherItem) == 0); // boolean};dojo.data.Item.prototype.getName = function() {	return this.get('name');};dojo.data.Item.prototype.get = function(/* string or dojo.data.Attribute */ attributeId) {	/**	 * summary: Returns a single literal value, like "foo" or 33.	 */ 	// dojo.lang.assertType(attributeId, [String, dojo.data.Attribute]);	var literalOrValueOrArray = this._dictionaryOfAttributeValues[attributeId];	if (dojo.lang.isUndefined(literalOrValueOrArray)) {		return null; // null	}	if (literalOrValueOrArray instanceof dojo.data.Value) {		return literalOrValueOrArray.getValue(); // literal	}	if (dojo.lang.isArray(literalOrValueOrArray)) {		var dojoDataValue = literalOrValueOrArray[0];		return dojoDataValue.getValue(); // literal	}	return literalOrValueOrArray; // literal};dojo.data.Item.prototype.getValue = function(/* string or dojo.data.Attribute */ attributeId) {	/**	 * summary: Returns a single instance of dojo.data.Value.	 */ 	// dojo.lang.assertType(attributeId, [String, dojo.data.Attribute]);	var literalOrValueOrArray = this._dictionaryOfAttributeValues[attributeId];	if (dojo.lang.isUndefined(literalOrValueOrArray)) {		return null; // null	}	if (literalOrValueOrArray instanceof dojo.data.Value) {		return literalOrValueOrArray; // dojo.data.Value	}	if (dojo.lang.isArray(literalOrValueOrArray)) {		var dojoDataValue = literalOrValueOrArray[0];		return dojoDataValue; // dojo.data.Value	}	var literal = literalOrValueOrArray;	dojoDataValue = new dojo.data.Value(literal);	this._dictionaryOfAttributeValues[attributeId] = dojoDataValue;	return dojoDataValue; // dojo.data.Value};dojo.data.Item.prototype.getValues = function(/* string or dojo.data.Attribute */ attributeId) {	/**	 * summary: Returns an array of dojo.data.Value objects.	 */ 	// dojo.lang.assertType(attributeId, [String, dojo.data.Attribute]);	var literalOrValueOrArray = this._dictionaryOfAttributeValues[attributeId];	if (dojo.lang.isUndefined(literalOrValueOrArray)) {		return null; // null	}	if (literalOrValueOrArray instanceof dojo.data.Value) {		var array = [literalOrValueOrArray];		this._dictionaryOfAttributeValues[attributeId] = array;		return array; // Array	}	if (dojo.lang.isArray(literalOrValueOrArray)) {		return literalOrValueOrArray; // Array	}	var literal = literalOrValueOrArray;	var dojoDataValue = new dojo.data.Value(literal);	array = [dojoDataValue];	this._dictionaryOfAttributeValues[attributeId] = array;	return array; // Array};dojo.data.Item.prototype.load = function(/* string or dojo.data.Attribute */ attributeId, /* anything */ value) {	/**	 * summary: 	 * Used for loading an attribute value into an item when	 * the item is first being loaded into memory from some	 * data store (such as a file).	 */ 	// dojo.lang.assertType(attributeId, [String, dojo.data.Attribute]);	this._dataProvider.registerAttribute(attributeId);	var literalOrValueOrArray = this._dictionaryOfAttributeValues[attributeId];	if (dojo.lang.isUndefined(literalOrValueOrArray)) {		this._dictionaryOfAttributeValues[attributeId] = value;		return;	}	if (!(value instanceof dojo.data.Value)) {		value = new dojo.data.Value(value);	}	if (literalOrValueOrArray instanceof dojo.data.Value) {		var array = [literalOrValueOrArray, value];		this._dictionaryOfAttributeValues[attributeId] = array;		return;	}	if (dojo.lang.isArray(literalOrValueOrArray)) {		literalOrValueOrArray.push(value);		return;	}	var literal = literalOrValueOrArray;	var dojoDataValue = new dojo.data.Value(literal);	array = [dojoDataValue, value];	this._dictionaryOfAttributeValues[attributeId] = array;};dojo.data.Item.prototype.set = function(/* string or dojo.data.Attribute */ attributeId, /* anything */ value) {	/**	 * summary: 	 * Used for setting an attribute value as a result of a	 * user action.	 */ 	// dojo.lang.assertType(attributeId, [String, dojo.data.Attribute]);	this._dataProvider.registerAttribute(attributeId);	this._dictionaryOfAttributeValues[attributeId] = value;	this._dataProvider.noteChange(this, attributeId, value);};dojo.data.Item.prototype.setValue = function(/* string or dojo.data.Attribute */ attributeId, /* dojo.data.Value */ value) {	this.set(attributeId, value);};dojo.data.Item.prototype.addValue = function(/* string or dojo.data.Attribute */ attributeId, /* anything */ value) {	/**	 * summary: 	 * Used for adding an attribute value as a result of a	 * user action.	 */ 	this.load(attributeId, value);	this._dataProvider.noteChange(this, attributeId, value);};dojo.data.Item.prototype.setValues = function(/* string or dojo.data.Attribute */ attributeId, /* Array */ arrayOfValues) {	/**	 * summary: 	 * Used for setting an array of attribute values as a result of a	 * user action.	 */	// dojo.lang.assertType(attributeId, [String, dojo.data.Attribute]);	dojo.lang.assertType(arrayOfValues, Array);	this._dataProvider.registerAttribute(attributeId);	var finalArray = [];	this._dictionaryOfAttributeValues[attributeId] = finalArray;	for (var i in arrayOfValues) {		var value = arrayOfValues[i];		if (!(value instanceof dojo.data.Value)) {			value = new dojo.data.Value(value);		}		finalArray.push(value);		this._dataProvider.noteChange(this, attributeId, value);	}};dojo.data.Item.prototype.getAttributes = function() {	/**	 * summary: 	 * Returns an array containing all of the attributes for which	 * this item has attribute values.	 */ 	var arrayOfAttributes = [];	for (var key in this._dictionaryOfAttributeValues) {		arrayOfAttributes.push(this._dataProvider.getAttribute(key));	}	return arrayOfAttributes; // Array};dojo.data.Item.prototype.hasAttribute = function(/* string or dojo.data.Attribute */ attributeId) {	/**	 * summary: Returns true if the given attribute of the item has been assigned any value.	 */ 	// dojo.lang.assertType(attributeId, [String, dojo.data.Attribute]);	for (var key in this._dictionaryOfAttributeValues) {		if (key == attributeId) {			return true; // boolean		}	}	return false; // boolean};dojo.data.Item.prototype.hasAttributeValue = function(/* string or dojo.data.Attribute */ attributeId, /* anything */ value) {	/**	 * summary: Returns true if the given attribute of the item has been assigned the given value.	 */ 	var arrayOfValues = this.getValues(attributeId);	for (var i in arrayOfValues) {		var candidateValue = arrayOfValues[i];		if (candidateValue.isEqual(value)) {			return true; // boolean		}	}	return false; // boolean};

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲美女视频在线| 国产精品一二三四| 成人午夜视频网站| 欧美日韩美少妇| 久久久91精品国产一区二区精品| 亚洲精品高清视频在线观看| 国产成人8x视频一区二区| 69堂亚洲精品首页| 中文字幕人成不卡一区| 国产一区二区三区久久悠悠色av| 欧美日韩国产免费一区二区 | 精品视频在线视频| 日本一区二区久久| 国产一区二区三区视频在线播放| 欧美亚洲国产一区二区三区va| 国产欧美精品一区二区色综合| 免费成人在线视频观看| 欧美日韩午夜在线| 亚洲欧美另类久久久精品| 国产馆精品极品| 日韩一区二区三区电影在线观看| 亚洲午夜在线电影| 欧美色综合网站| 亚洲免费高清视频在线| 99精品久久99久久久久| 国产精品视频线看| 成人免费黄色在线| 欧美国产日产图区| 成人精品免费看| 国产午夜精品久久久久久免费视| 国内成人免费视频| www久久精品| 国产精品夜夜爽| 国产色综合一区| 床上的激情91.| 欧美国产精品久久| 99这里只有久久精品视频| 国产精品理伦片| 色综合久久综合| 一区二区三区日韩在线观看| 色一情一乱一乱一91av| 亚洲h精品动漫在线观看| 欧美日韩视频在线观看一区二区三区 | 91福利精品视频| 亚洲线精品一区二区三区八戒| 日本精品免费观看高清观看| 亚洲国产视频直播| 欧美一区二区免费观在线| 经典三级一区二区| 日本一区二区三区dvd视频在线| 99免费精品视频| 亚洲激情第一区| 欧美亚洲一区二区在线观看| 午夜在线成人av| 日韩欧美一区二区免费| 国产精品99久久久久久久vr| 亚洲图片另类小说| 欧美日韩一区三区四区| 麻豆国产欧美日韩综合精品二区| 久久久天堂av| 在线视频中文字幕一区二区| 老司机精品视频在线| 中文文精品字幕一区二区| 欧美日韩综合在线免费观看| 久久97超碰国产精品超碰| 综合久久一区二区三区| 日韩一卡二卡三卡四卡| 不卡的看片网站| 国产 日韩 欧美大片| 亚洲另类在线制服丝袜| 欧美精品久久99| 成人中文字幕电影| 日韩国产高清影视| 国产精品久久久久aaaa| 91.麻豆视频| 91在线码无精品| 精品一区二区三区影院在线午夜 | 婷婷综合另类小说色区| 久久久国产精品午夜一区ai换脸 | 99re66热这里只有精品3直播 | 精品卡一卡二卡三卡四在线| jiyouzz国产精品久久| 人人爽香蕉精品| 亚洲精品日韩一| 国产农村妇女精品| 欧美日韩免费不卡视频一区二区三区| 国模大尺度一区二区三区| 亚洲精品高清在线观看| 国产欧美日本一区视频| 精品国内二区三区| 欧美日韩国产一二三| 91蜜桃视频在线| 国产一区福利在线| 男女性色大片免费观看一区二区 | 欧美精品粉嫩高潮一区二区| av在线免费不卡| 国产麻豆视频一区| 日本午夜精品一区二区三区电影| 亚洲天堂免费看| 国产精品你懂的| 国产婷婷色一区二区三区| 91麻豆精品国产91久久久久久久久| 9i看片成人免费高清| 成人亚洲一区二区一| 国产主播一区二区| 看片的网站亚洲| 视频一区二区三区中文字幕| 亚洲一区在线观看免费 | 国产拍欧美日韩视频二区| 欧美成人一区二区三区片免费| 欧美日韩激情在线| 欧美日韩综合不卡| 欧美在线观看18| 色成年激情久久综合| 91日韩在线专区| 色婷婷亚洲综合| 91久久精品一区二区三区| 91亚洲男人天堂| av电影一区二区| 色婷婷综合激情| 色拍拍在线精品视频8848| 日本久久电影网| 欧美日韩中文国产| 欧美一区二区女人| 精品免费日韩av| 亚洲国产精品二十页| 国产精品卡一卡二| 一区二区三区国产精华| 亚洲成精国产精品女| 蜜臀久久久久久久| 国产一区二区三区日韩| 成人夜色视频网站在线观看| 99久久伊人久久99| 色综合久久中文字幕综合网 | 亚洲最新在线观看| 亚洲福利一区二区| 久久av资源网| 成人自拍视频在线观看| 91精品福利视频| 91精品国产色综合久久ai换脸| 日韩欧美专区在线| 欧美激情一区不卡| 亚洲综合色婷婷| 免费成人在线观看| a美女胸又www黄视频久久| 91黄色激情网站| 欧美成人高清电影在线| 亚洲国产精品成人久久综合一区| 亚洲欧美aⅴ...| 日本aⅴ免费视频一区二区三区| 国产一二精品视频| 91丨porny丨首页| 欧美一区永久视频免费观看| 国产日韩欧美精品综合| 亚洲午夜免费福利视频| 国产精品99久久久久久似苏梦涵 | 肉丝袜脚交视频一区二区| 紧缚捆绑精品一区二区| 91最新地址在线播放| 欧美一区二区三区电影| 亚洲欧洲成人精品av97| 日韩av在线免费观看不卡| a4yy欧美一区二区三区| 精品国产一区二区三区久久久蜜月 | 日韩在线a电影| 粉嫩13p一区二区三区| 欧美日韩国产首页| 欧美国产综合色视频| 日本sm残虐另类| 色视频一区二区| 久久久久久久久久久久久女国产乱 | 久久国产麻豆精品| 91在线观看下载| 久久久777精品电影网影网 | 亚洲精品乱码久久久久久| 国产在线视视频有精品| 欧美精品日韩精品| 亚洲色图另类专区| 国产成人在线免费观看| 精品国产一区二区在线观看| 午夜视频一区二区三区| 欧洲视频一区二区| 中文字幕一区二区三| 国产成人午夜精品影院观看视频 | 欧美色精品在线视频| 国产精品不卡一区二区三区| 国产麻豆一精品一av一免费 | 久久噜噜亚洲综合| 视频在线观看一区| 欧美性猛片xxxx免费看久爱| 亚洲色图欧洲色图| 91婷婷韩国欧美一区二区| 综合色中文字幕| 91在线观看污| 专区另类欧美日韩| 99视频在线精品| 自拍偷在线精品自拍偷无码专区 | 91精品久久久久久久91蜜桃| 亚洲国产一区二区在线播放| 欧洲一区二区三区在线|