javascript - var = true 不会传递给另一个函数

标签 javascript function variables if-statement

我的网站上有一个联系人字段,并测试插入的值是否正确。那部分工作正常。如果一个值是正确的,则有一个 value = true 的 var。

我还调用了第二个函数,它测试是否所有联系人字段都为真。如果是这样,发送按钮将被启用,否则它将保持禁用状态。不幸的是,我在我的控制台中收到一个错误,上面写着:Uncaught ReferenceError: nameIsGoed is not defined。 希望你能帮帮我! :)

悄然相同的树函数之一

function checkEmptyMessage(field) {
if (field.value != '') {
    document.getElementById("message").style.borderColor="#91bc1e";
    var messageIsGoed = true;
}
else if (field.value == ''){
    document.getElementById("message").style.borderColor="#f15a24";
    var messageIsGoed = false;
}}

检查值是否为true的函数,如果是:禁用get的false。

 function checkDisable(){
    if ((nameIsGoed == true) && (messageIsGoed == true) && (mailIsGoed == true)){
        document.getElementById("submit").disabled=false;
        alert("mooizo");
    }
    else{
        alert("er missen nog gegevens");
    }

}

最佳答案

你有范围问题,var messageIsGoed; 应该在你的函数之外(声明),所以你给它的值可用于其他函数。

var messageIsGoed; // outside the function

function checkEmptyMessage(field) {
if (field.value != '') {
    document.getElementById("message").style.borderColor="#91bc1e";
    messageIsGoed = true;
}
else if (field.value == ''){
    document.getElementById("message").style.borderColor="#f15a24";
    messageIsGoed = false;
}}

我在函数外部添加(声明)var messageIsGoed; 并删除了函数内部的 var 这样您就不会再次声明它(这实际上创建了一个新变量仅在该函数内可用)。

在这里阅读更多关于声明变量的信息:MDN:var

关于javascript - var = true 不会传递给另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18536867/

相关文章:

javascript - 如何在 websocket 上 .append() 新消息以使用 CSS 样式页面?

javascript - 通过 C# 在 EmailTemplate.html 中打印数组

c++ - 在嵌套的 if 语句中使用函数来触发 Action

function - 动态定义LUA函数的正确方法

python - 动态分配模块名称作为别名

Javascript 函数仅适用于一个变量

javascript - 过渡效果——尝试打造最简单的滑出式导航

javascript - Meteor WebSocket 连接到 'ws://.../websocket' 失败 : Error during WebSocket handshake: Unexpected response code: 400

variables - 如何将空变量传递给Lua中的函数

javascript - 访问名称部分为变量的数组