javascript - 仅当之前的所有函数都返回 false 时才启动函数

标签 javascript html

我是 javascript 新手,所以请原谅我,如果这看起来很明显,但我想要的是如果前面的函数操作的所有条件都返回 false 则启动第二个函数

function validateForm()
{
    var file = document.getElementById('file');
        if (file.files[0].size >= 11000000) {

        alert('File too Big');
        return false;
    }

    var x=document.forms["myForm"]["title"].value;
         if (x==null || x==""){

        alert("First name must be filled out");
        return false;
    }

    // if both returned false then start this function:

    function start_Uploading(){
        document.getElementById('message').innerHTML = 'Loading...';

       return true;
    }

html:

<input type='submit'  onclick="return validateForm();">

最佳答案

您的返回值结束函数调用。您只想设置一个变量来查看输入是否有效。然后您可以检查 isValid 是否为 true,并从那里调用您的函数。

在您的原始代码中还值得注意

function start_Uploading(){...}

实际上并不运行该函数,它只是定义它。您需要 start_uploading() 来执行该函数。

function validateForm()
{
    var isValid = true;
    var file = document.getElementById('file');
    if (file.files[0].size >= 11000000) {
        alert('File too Big');
        isValid=false;
    }

    var x=document.forms["myForm"]["title"].value;
    if (x==null || x==""){
        alert("First name must be filled out");
        isValid=false;
    }

    // if both returned false then start this function:

    function start_Uploading(){
        document.getElementById('message').innerHTML = 'Loading...';
        return true;
    }
    if(isValid){
        start_Uploading();
    }
}

关于javascript - 仅当之前的所有函数都返回 false 时才启动函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14323664/

相关文章:

javascript - 为什么将生成的代码复制到不同目录中的 html 文件后,Adobe Edge 动画不起作用?

html - Bootstrap 导航栏对齐问题与汉堡下拉

javascript - 将元素 append 到 QueryList Angular

javascript - 在 chrome 中,当用户在我的网站中拖动缩略图时,它如何显示完整尺寸的图像 url?

javascript - 使用自定义超链接包装 Instagram 嵌入

html - 如何将 CSS 表格行单元格大小与下一行的单元格大小分离?

javascript - 如何使用 jquery 使 2 个按钮切换 css 并仅使用 1 个按钮。不显示隐藏/显示

javascript - 使用 vue.js 和 js 获取数组

html - 第二次点击图片后出现蓝线

image - canvas draw图像质量