Javascript - 在 Onsubmit 时调用两个函数

标签 javascript html onsubmit

我有两个功能;一个验证表单,另一个在第一个函数返回 true 时执行一些代码。

<form name="calculator" method="POST" onsubmit="return checkForm(); result(trueOrFalse);" onreset="clearForm()">

checkForm()函数定义如下:

function checkForm() {
    var valid = true;
    var radios1 = document.getElementsByName("item");
    var radios2 = document.getElementsByName("postage");

    if (document.getElementById("constituency").value == 0) {
        document.getElementById("constituency").style.border = "1px solid #a60f28";
        document.getElementById("constituency").style.borderRadius = "2.5px";
        document.getElementById("conWarning").style.display = "block";
        valid = false;
    }

    //similar code as above for other fields

    trueOrFalse = valid;
    return valid;
}

result(valid) 函数定义为:

function result(valid) { //use trueOrFalse as parameter
    if (valid == true) {
        document.getElementById("result").style.display = "none";
        document.getElementById("result").innerHTML = "Yay"; //test display value
        document.getElementById("result").style.display = "inline";
    }
    else {
        document.getElementById("result").style.display = "none";
        document.getElementById("result").innerHTML = "0";
        document.getElementById("result").style.display = "inline";
    }

    return valid;
}

这里的目标是首先检查用户填写的表单是否有效;如果是,则生成一个值以在 HTML 中向用户显示,如下所示:

<div id="pound">&#163; <div id="result">0</div></div>

我不确定调用两个函数的方式是否正确/合法,或者是否正确/合法,result(valid) 函数要显示的值是否已写入正确。该表单应该充当计算器。

最佳答案

而不是:

trueOrFalse = valid;
return valid;

试试这个:

return result(valid);

然后从 onsubmit 中删除 result(trueOrFalse);

关于Javascript - 在 Onsubmit 时调用两个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26650960/

相关文章:

iPad 上的 Javascript 加载缓慢

html - 是否可以通过浏览器开发工具查看浏览器正在使用哪个 srcset 图像

jquery - JQuery Validation SubmitHandler 和 Form.Submit 成功后如何阻止输入?

javascript - 当按下 Enter 时 onsubmit 不会调用我的函数

javascript - 为什么不打印段落中的字符?

javascript - 未捕获的类型错误 : Cannot read property '_setter' of undefined

javascript - Chartist 未定义错误

html - 如何将选择元素与输入文本垂直对齐?

html - CSS:如何在图像周围制作一个具有 60% 一种颜色和 40% 其他颜色的圆圈?

javascript - 运用于. ("submit") HTML 表单不起作用