我正在编写一个动态打印HTML页面的Perl脚本。
该页面允许用户通过单击表单上的单选按钮选择四个任务之一。
如果用户单击“清除注册表”任务的单选按钮,我应该向用户提供警告。如果用户单击“确定”,则表单将提交。如果用户单击取消,则不会发生任何事情。
我是JavaScript的新手,因此我根据我的老师的两个示例编写了代码:一个是在按钮上运行一个确认方法,另一个是在表单上运行onSubmit的警报方法。
但显然我不明白我在做什么因为它不起作用。该对话框甚至没有弹出。
我如何做我需要做的事?
我的代码的相关部分(没有Perl打印语句)目前看起来像这样:
<script type="text/javascript">
function confirmation( ) {
if (maint.mainttask.value == "clearsheet") {
var answer = confirm('Are you sure you want to clear all entries?');
if (answer==true){
return(true);
} else {
return(false);
}
}
return(true);
}
</script>
<form method='post' action='path removed' name=maint ONSUBMIT="return confirmation( )">
<table>
<tr><td><input type=radio name='mainttask' checked value='clearsheet'></td><td>Clear the signup sheet</td></tr>
答案 0 :(得分:0)
<script type="text/javascript">
function confirmation( )
{
if (maint.mainttask.value == "clearsheet")
{
var answer = confirm('Are you sure you want to clear all entries?');
if (answer){
return true;
}
else{
return false;
}
}
return true;
}
</script>
<form method='post' action='#' name='maint' ONSUBMIT="return confirmation( )">
<table>
<tr><td><input type=radio name='mainttask' checked value='clearsheet'></td><td>Clear the signup sheet</td></tr>
<input type="submit" name="submit" value="submit"/>
</form>
尝试使用此编辑过的代码,希望它现在可以使用并显示确认框。
答案 1 :(得分:0)
我总是喜欢使用标准按钮并从验证函数中调用submit()方法,而不是依赖于提交按钮和onsubmit事件。其他人可能不同意,但在我看来,你可以用这种方式控制事物。请尝试以下方法......
<html>
<head></head>
<body>
<script type="text/javascript">
function confirmation() {
if (maint.mainttask.value == "clearsheet") {
var answer = confirm('Are you sure you want to clear all entries?');
if (answer==true){
document.forms["maint"].submit();
}
}
}
</script>
<form method='post' action='path removed' name='maint'>
<table>
<tr><td><input type='radio' name='mainttask' checked value='clearsheet'></td><td>Clear the signup sheet<br />
<input type="button" onClick="confirmation()" value="Click me..."/></td></tr>
</table>
</form>
</body>