javascript - javascript代码中 'return'有什么用

标签 javascript html

在这个简单的例子中,“return”用在了三个地方。所以,我只是对在函数内部使用“return”感到困惑。什么时候在函数内部使用这个'return'有什么用? 主要是,我想知道,在提交按钮上,'return' 用于 'onclick' 属性,请参见此处 <input type="submit" value="submit" onclick="return validateR();"> .所以,还要解释一下,'return' 在这里做了什么。请。

<HTML>
    <HEAD>
        <TITLE>ComboBox Validation</TITLE>
        <script Language="JavaScript">
            function validateR(){
                var selectedCombobox = (comboForm.technology.value);
                if (selectedCombobox == "-1") {
                    alert("Please Select Technology");
                    return false; //here
                }
                if (selectedCombobox == "Servlet") {
                   alert("Yse");
                }
                return true; //here
            }
       </script>
   </HEAD>
 <BODY>
    <form name="comboForm">
        <select name="technology">
            <option value="-1">Select</option>
            <option value="JSP">Java Server Pages</option>
            <option value="Servlet">Servlet</option>
            <option value="PHP">PHP</option>
            <option value="ASP">ASP</option>
        </select>
        <input type="submit" value="submit" onclick="return validateR();">  //here
    </form>
 </BODY>
</HTML>

最佳答案

当你有一个事件处理器时,比如

<input type="submit" value="submit" onclick="return validateR();">

您可以为事件返回一个值。如果您返回值 false,事件的默认行为将被阻止。您可以将 false 返回到 onsubmit 事件以阻止提交页面。

总而言之,

return validateR() --> return true (or false) --> prevents default behavior of event

此行为在所有浏览器中都是标准化的。它后来被 event.preventDefaultevent.stopPropogation 的组合所取代,它们的作用基本相同。然而,有些人更喜欢内联语法 (return func();),它也适用于旧版本的 IE。

我已经掩盖了有关事件冒泡的一些微妙之处。以下是一些更深入讨论的引用资料:

关于javascript - javascript代码中 'return'有什么用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26923271/

相关文章:

python - 无法查找和处理从 HTML 中取出的文本

javascript - 如何删除某个div之后的div中的所有元素

javascript - 无法使用jquery删除表[行]

javascript - 包含脚本在 web.py 中不起作用

javascript - 为什么我不能console.log() style.display

css - 2 个 float div,第一个 div 宽度为 100%

javascript - 在 id 和 class 以外的 div 标签上动态添加 CSS 类

javascript - 图像上关闭按钮的 anchor 标记在 safari 中不起作用

javascript - merge 和 toProperty 在 bacon.js 中做什么

javascript - 单击另一个复选框时突出显示一个复选框