使用Javascript链接提交HTML表单以及确认框

时间:2013-06-06 23:08:14

标签: javascript html forms form-submit confirmation

我正在尝试提交表单数据,但我没有使用标准的“提交”按钮,而是使用常规的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>

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

2 个答案:

答案 0 :(得分:1)

试试这个: -

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

答案 1 :(得分: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>