javascript确认不会停止提交表单

时间:2017-02-18 17:29:13

标签: javascript php

我正在尝试使用php中的javascript做一个确认功能,它只用于显示按钮,但无论你按哪个表单都会提交heres代码和功能

<form action='Allocated.php' method='post'  >
    <input type='submit' name='disc' value='Discontue Asset'    formnovalidate='formnovalidate' onclick='myFunction()' />
    <input type='hidden' name='alloc' value='$AllocID' />
    </td>
</form>

和功能

function myFunction() {
    var r = confirm("Press a button!");
    if (r == true) {
        return true;
    } else {
        return false;
    }
}

任何帮助将不胜感激 感谢

4 个答案:

答案 0 :(得分:3)

onclick='myFunction()'更改为onsubmit='return myFunction()',以便可以将函数返回的值返回给事件。

答案 1 :(得分:1)

将此功能放在属性 onsubmit with return keyword ,thx Scott)表单上,然后更改为按钮

<form action="Allocated.php" method="post" onsubmit="return myFunction()">
    <input type="hidden" name="alloc" value="$AllocID" />
    <button type="submit">Discontue Asset</button>
</form>

答案 2 :(得分:0)

使用它:

function myFunction() {
    var r = confirm("Press a button!");
    if (r) {
        return true;
    } else {
        return false;
    }
}

或: 对于布尔值,您必须使用===而不是==:

function myFunction() {
    var r = confirm("Press a button!");
    if (r == true) {
        return true;
    } else {
        return false;
    }
}

function myFunction() {
    var r = confirm("Press a button!");
    if (r === 1) {
        return true;
    } else {
        return false;
    }
}

答案 3 :(得分:0)

你可以尝试下面的代码,它更简单

为表单提供ID

<form action='Allocated.php' method='post' id="myform">
<input type='submit' name='disc' value='Discontue Asset'    formnovalidate='formnovalidate' onclick='myFunction()' />
<input type='hidden' name='alloc' value='$AllocID' />
</td>

然后写这样的javascript

function myFunction() {
var r = confirm("Press a button!");
if (r) {
    document.getElementById('myform').submit();
} else {
    return false;
}

}