0

我正在尝试提交表单数据,但我不想使用标准的“提交”按钮,而是想使用常规的 HTML 链接。但是,当我单击此链接时,我希望有一个确认框,要求用户继续或取消。我有拼图的两个部分,但是当我把它们放在一起时,它们玩得不好。这是我目前拥有的 Javascript 代码:

function confirmSubmit()
{
var agree=confirm("Are you sure you wish to delete this file?");
if (agree)
    return true ;
else
    return false ;
}
function submitform() {
    document.forms["delete14"].submit();
}

对于 HTML,我有:

<a href="javascript:submitform()" onClick="javascript:confirmSubmit()">link text</a>

确认框确实按预期弹出,并且表单确实正确提交。但目前,即使用户在确认框中单击“否”,表单也会提交。

4

2 回答 2

1

试试这个:-

function confirmSubmit()
{
var agree=confirm("Are you sure you wish to delete this file?");
if (agree)
    document.forms["delete14"].submit();
else
    return false ;
}
于 2013-06-06T23:10:01.657 回答
1

首先,如果您不想要链接,请不要使用链接,请使用样式跨度(或按钮,它告诉用户“点击我会发生某些事情”而不是链接,它说“点击我,我'将带你到另一个页面')。

另外,不要在期望值是脚本的属性中使用“javascript:”,这将被视为无用的标签。

无论如何,您的问题是链接上有两个听众:

<a href="javascript:submitform()" onClick="javascript:confirmSubmit()">link text</a>

href中的那个将无条件提交表单。所以使用跨度并摆脱href:

<span style="cursor: pointer; text-decoration: underline"
   onclick="confirmSubmit()">link text</span>
于 2013-06-06T23:26:27.253 回答