//文件名:prototype_ext.js //说明:基于prototype.js的一些扩展功能 Element.addMethods({ // 查找子节点 FindChild: function(element, id) { element = $(element); var elms = element.childElements(); for (var i = 0; i < elms.length; i++) { if (elms[i].id == id) { return elms[i]; } else { var rv = elms[i].FindChild(id); if (rv != null) { return rv; } } } return null; } }); Array.prototype.remove=function(obj){ for(var i=0;i<this.length;i++){ if(this[i]===obj){ this.splice(i,1); return; } } } function ShowDialog(url, args, width, height, setting) { var defaultSetting = { dialogWidth: null, dialogHeight: null, dialogTop: null, dialogLeft: null, center: "yes", dialogHide: null, //dialogHide help: "no", //help resizable: "no", //resizable scroll: "no", //scroll status: "no", //status unadorned: null, //unadorned edge: null //edge:{ sunken | raised } }; if (setting != null) { for (var attr in setting) { defaultSetting[attr] = setting[attr]; } } if (width != null) { defaultSetting.dialogWidth = width + "px"; } if (height != null) { defaultSetting.dialogHeight = height + "px"; } var settingStr = ""; var needSplit = false; for (var attr in defaultSetting) { if (needSplit) settingStr += ";"; else needSplit = true; settingStr += attr + ":" + defaultSetting[attr]; } var rv = window.showModalDialog(url, args, settingStr); return rv; } var Public = { FindChild: function(dom, id) { for (var i = 0; i < dom.childNodes.length; i++) { var node = dom.childNodes[i]; if (node.nodeType == 3) continue; //文本节点666 if (node.id == id) { return node; } } for (var i = 0; i < dom.childNodes.length; i++) { var node = dom.childNodes[i]; if (node.nodeType == 3) continue; //文本节点 var cn = Public.FindChild(node, id); if (cn != null) return cn; } return null; }, ShowDialog: ShowDialog }