停止选择器在 HTML 结束后关闭
Stop Picker from closing after coming to end of HTML
我按 button/image 到 运行 脚本打开选择器。我可以 select 现有文件夹,并且添加了一个字段来创建新文件夹(在 selected 现有文件夹中)。
所有这些都按我的意愿工作,但我添加了一些错误处理,以防在没有给出文件夹名称的情况下按下创建新文件夹的按钮。我将消息放入警报中(可能需要修改它,因为它为 'prevent this page from displaying additional dialogues' 提供了选项)但是一旦警报消失,html 就会消失。
如何保留按下按钮之前 IFRAME 中的 HTML?
这是我的 HTML 代码和按钮背后的功能。
</head>
<body>
<div>
<p> Please select the property you wish the ticket folder to be created in. </p>
<button onclick='getOAuthToken()'>Select a Folder</button>
<br>
<p> (If it does not exist, select the folder you wish to create a new location in.) </p>
<p id='result'></p>
</div>
<script src="https://apis.google.com/js/api.js?onload=onApiLoad"></script>
<br><br><br>
<div id="frmCreate" style="display:none">
<form>
<label class="hiddenfrm"> Folder Name: </label><input type="text" id="newFdrNm" class="hiddenfrm">
<button onclick='makeFolder()' class="hiddenfrm">Create New Folder</button>
<p id='newresult' class="hiddenfrm"></p>
</form>
</div>
</body>
</html>
//function to create a folder in the selected folder
function makeFolder() {
var ParentFolder = document.getElementById('PFldrID').innerHTML
var NewFolderName = document.getElementById('newFdrNm').value
if (NewFolderName == "") {
alert("Folder Name Required!")
}
else {
google.script.run.CreatePropertyFolder(NewFolderName, ParentFolder);
google.script.host.close();
}
}
编辑:
删除表单标签后,对话框按要求工作。
对于警报,我决定在文本框下方显示错误消息。
修改部分代码:
*HTML*
<button onclick='makeFolder()' class="hiddenfrm">Create New Folder</button>
<br><span id="newFdrNmError"></span>
*script*
if (NewFolderName == "") {
document.getElementById('newFdrNmError').innerHTML = "Error: You must 'name' the new folder!";
return false;
}
window 中的 HTML 正在消失,因为 "Create New Folder" 按钮位于 <form>
标签内。据我所知,除了将按钮移到 <form>
标签之外,没有什么可以阻止这种情况的发生。
移动按钮:
<form>
<label class="hiddenfrm"> Folder Name: </label><input type="text" id="newFdrNm" class="hiddenfrm">
<p id='newresult' class="hiddenfrm"></p>
</form>
<button onclick='makeFolder()' class="hiddenfrm">Create New Folder</button>
我按 button/image 到 运行 脚本打开选择器。我可以 select 现有文件夹,并且添加了一个字段来创建新文件夹(在 selected 现有文件夹中)。
所有这些都按我的意愿工作,但我添加了一些错误处理,以防在没有给出文件夹名称的情况下按下创建新文件夹的按钮。我将消息放入警报中(可能需要修改它,因为它为 'prevent this page from displaying additional dialogues' 提供了选项)但是一旦警报消失,html 就会消失。
如何保留按下按钮之前 IFRAME 中的 HTML?
这是我的 HTML 代码和按钮背后的功能。
</head>
<body>
<div>
<p> Please select the property you wish the ticket folder to be created in. </p>
<button onclick='getOAuthToken()'>Select a Folder</button>
<br>
<p> (If it does not exist, select the folder you wish to create a new location in.) </p>
<p id='result'></p>
</div>
<script src="https://apis.google.com/js/api.js?onload=onApiLoad"></script>
<br><br><br>
<div id="frmCreate" style="display:none">
<form>
<label class="hiddenfrm"> Folder Name: </label><input type="text" id="newFdrNm" class="hiddenfrm">
<button onclick='makeFolder()' class="hiddenfrm">Create New Folder</button>
<p id='newresult' class="hiddenfrm"></p>
</form>
</div>
</body>
</html>
//function to create a folder in the selected folder
function makeFolder() {
var ParentFolder = document.getElementById('PFldrID').innerHTML
var NewFolderName = document.getElementById('newFdrNm').value
if (NewFolderName == "") {
alert("Folder Name Required!")
}
else {
google.script.run.CreatePropertyFolder(NewFolderName, ParentFolder);
google.script.host.close();
}
}
编辑:
删除表单标签后,对话框按要求工作。
对于警报,我决定在文本框下方显示错误消息。 修改部分代码:
*HTML*
<button onclick='makeFolder()' class="hiddenfrm">Create New Folder</button>
<br><span id="newFdrNmError"></span>
*script*
if (NewFolderName == "") {
document.getElementById('newFdrNmError').innerHTML = "Error: You must 'name' the new folder!";
return false;
}
window 中的 HTML 正在消失,因为 "Create New Folder" 按钮位于 <form>
标签内。据我所知,除了将按钮移到 <form>
标签之外,没有什么可以阻止这种情况的发生。
移动按钮:
<form>
<label class="hiddenfrm"> Folder Name: </label><input type="text" id="newFdrNm" class="hiddenfrm">
<p id='newresult' class="hiddenfrm"></p>
</form>
<button onclick='makeFolder()' class="hiddenfrm">Create New Folder</button>