selectsheet.htm
来自「Windows Web脚本开发指南/(美) Dan Heflin, Todd N」· HTM 代码 · 共 113 行
HTM
113 行
<html xmlns:commonSource>
<head>
<Title id="docTitle">Select Existing Timesheet</Title>
</head>
<script language="JavaScript">
var activeSheet = null;
var actionType = window.dialogArguments;
function initialize(){
var category;
var items = "";
cmdAction.value = actionType;
timesheets.async = false;
timesheets.load("timeSheetList.xml");
if (timesheets.xml == ""){
alert("You have not built any timesheets yet.");
window.close();
return;
}
if (actionType == "Open"){
var category = timesheets.selectSingleNode("//Completed");
if (category.childNodes.length > 0)
items = "<li category='Completed' level='category' onClick=handleClick()>Completed Timesheets</li>";
}
var category = timesheets.selectSingleNode("//Open");
if (category.childNodes.length > 0 )
items += "<li category='Open' level='category' onClick=handleClick()>Open Timesheets</li>";
if (items == ""){
if (actionType == "Open")
alert("You have not built any timesheets yet.");
else
alert("There are no open timesheets to delete.");
window.close();
return;
}
else{
root.innerHTML = items;
xslOpen.async = false;
xslOpen.load("selectSheet.xsl");
}
}
function handleClick(){
var source = event.srcElement;
switch (source.level){
case "category":
if (source.children.length > 0){
source.innerHTML = source.category + " Timesheets";
activeSheet = null;
}
else{
var xslNode = xslOpen.selectSingleNode("//xsl:template");
var xmlNode = timesheets.selectSingleNode("//" + source.category);
var timesheetHTML = xmlNode.transformNode(xslNode);
source.innerHTML = source.category + " Timesheets" + timesheetHTML;
}
break;
default:
cmdAction.disabled = false;
if (activeSheet != null)
activeSheet.style.backgroundColor = "white";
activeSheet = source;
source.style.backgroundColor = "lightblue";
treeContainer.displayed = false;
treeContainer.displayed = true;
break;
}
event.cancelBubble = true;
}
function handleAction(){
if (actionType == "Open")
openSheet();
else
deleteSheet();
}
function openSheet(){
if (activeSheet == null)
alert("You must select a timesheet.");
else{
var dataPath = common.getDataPath();
window.returnValue = dataPath + activeSheet.id;
window.close();
}
}
function deleteSheet(){
var message = "Are you sure you wish to delete this timesheet?";
if (confirm(message)){
file = activeSheet.id;
common.deleteXMLDocument(file);
var openNode = timesheets.selectSingleNode("//Open");
var selected = timesheets.selectSingleNode("//timeSheet[@file='" + file + "']");
openNode.removeChild(selected);
var dataPath = common.getDataPath();
common.saveXMLDocument(timesheets, dataPath + "timeSheetList.xml");
window.returnValue = dataPath + activeSheet.id;
window.close();
}
}
function closeSheet(){
window.close();
}
</script>
<xml ID="timesheets"></xml>
<xml ID="xslOpen"></xml>
<commonSource:source ID="common" STYLE="behavior:url(commonSource.htc)" />
<body onLoad="initialize()">
<span ID="treeContainer" onmouseover="this.style.cursor='hand';" style="height:250;overflow:scroll;width:304">
<ul ID="root">
</ul>
</span>
<p align="center"><input id="cmdAction" type="button" onClick="handleAction()" disabled="true"> <input type="button" onClick="closeSheet()" value="Cancel"></p>
</body>
</html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?