JavaScript使用Confirm取消表单提交

3

我如何在警告窗口中添加取消按钮?

我已经使用了confirm()方法,但当单击提交按钮时,确认窗口弹出,但是当单击取消按钮时,表单数据仍然会被存储。

我只希望单击取消按钮不存储数据并保留之前的表单。这是我的代码:

function submitdata()
{   
    var r=confirm("Are You Sure You Want To Proceed?");

    if(r==true)
    {
        alert("Record is saved");
    }
    else
    {
        alert("Cancelling Transaction");
        javascript:history.go(0);
    }   
}

2
在你的方法中使用 return false; 来停止执行。 - swapnesh
4个回答

2
<form action="" name="test" onsubmit="return submitdata();">
    <input type="text" />

    <input type="submit" />

</form>

<script type="text/javascript">

function submitdata() { 
    var r=confirm("Are You Sure You Want To Proceed?"); 
    if(r==true) { 
        alert("Record is saved"); 
    } else { 
        alert("Cancelling Transaction"); 
        javascript:history.go(0);
    }

}

</script>

1
这不起作用。当取消发布时,您需要从submitdata()返回false,并且不要使用history.go(0) - cspolton

2

这就是你所需要的:

<script type="text/javascript">

    function submitdata() { 
        return confirm("Are You Sure You Want To Proceed?"); 
    }

</script>

0

反转逻辑。但问题用的语言很奇怪,最好使用自定义提示来将取消设置为默认值。

function forceNonDefaultOk() {
    return ( ! confirm( 'Keep working' ) );
}

0

更新

function submitdata() {
    var r=confirm("Are You Sure You Want To Proceed?");

    if(r==true) {
        alert("Record is saved");
        return true;
    } else {
        alert("Cancelling Transaction");
        return false;
    }   
}

谢谢你的帮助,但是数据仍然保存到数据库中,取消按钮无法正常工作。 - Ankit Sharma

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接