当前位置: 首页 > 面试题库 >

“返回假”的含义是什么?做?

康照
2023-03-14
问题内容

我写了一个网页,用户可以在其中输入存储在数据库中的日志条目,然后使用检索并打印在该页面上ajax。我还很陌生ajax,想知道是否有人可以向我解释return false;代码末尾的功能?甚至有必要吗?

如果我将第二个ajax代码放在该代码之后return false不起作用!你能告诉我为什么吗?

//handles submitting the form without reloading page 
$('#FormSubmit').submit(function(e) {
    //stores the input of today's data
    var log_entry = $("#LogEntry").val();
    // prevent the form from submitting normally
    e.preventDefault();

    $.ajax({
        type: 'POST',
        url: 'behind_curtains.php',
        data: {
            logentry: log_entry
        },
        success: function() {
            alert(log_entry);
            //clears textbox after submission
            $('#LogEntry').val("");
            //presents successs text and then fades it out
            $("#entered-log-success").html("Your Entry has been entered.");
            $("#entered-log-success").show().fadeOut(3000);
        }
    });
    //prints new log entries on page upon submittion
    $.ajax({
        type: 'POST',
        url: '/wp-content/themes/childOfFanwood/traininglog_behind_curtains.php',
        data: {
            log_entries_loop: "true"
        },
        success: function(data) {
            alert(data);
            $("#log-entry-container").html("");
            $("#log-entry-container").html(data);
        }
    });
    return false;
});
​

问题答案:

我在这里写的对于 jQuery事件 是正确的,
对于普通javascript事件,请在答案底部阅读@TJ Crowder评论

return false在回调中可以防止出现默认行为。例如,在某种情况submit下,它不提交表单。

return false 也会停止冒泡,因此元素的父代将不知道事件的发生。

return false 相当于event.preventDefault()+event.stopPropagation()

当然,该return xxx行之后存在的所有代码都不会执行。(与我所知道的所有编程语言一样)

一个 “真实”的 演示讲解的区别return falseevent.preventDefault()

标记:

<div id="theDiv">
    <form id="theForm" >
        <input type="submit" value="submit"/> 
    </form>
</div>​

JavaScript:

$('#theDiv').submit(function() {
    alert('DIV!');
});
$('#theForm').submit(function(e) {
    alert('FORM!');
    e.preventDefault();
});​

现在…当用户提交表单时,第一个处理程序是表单提交,preventDefault()->不会提交表单,但是事件冒泡到div,触发了它的提交处理程序。

现场演示

现在,如果表单提交者的处理程序将通过以下方式取消冒泡return false

$('#theDiv').submit(function() {
    alert('DIV!');
});
$('#theForm').submit(function(event) {
    alert('FORM!');
    return false;   
    // Or:
    event.preventDefault(); 
    event.stopPropagation();
});​

div甚至都不知道有表单提交。

现场演示

这是什么return false做的香草JavaScript事件

从DOM2处理程序(addEventListener)返回false 根本不执行任何操作(既不会阻止默认设置,也不会停止冒泡;从Microsoft
DOM2-ish处理程序(attachEvent),它阻止默认设置,但不会冒泡;从DOM0处理程序(onclick="return ..."),它阻止默认设置(只要您在属性中包含return即可)但不冒泡;在jQuery事件处理程序中,这两者都可以实现,因为这是jQuery的细节和实时测试–
TJ Crowder



 类似资料:
  • 问题内容: 我感兴趣的部分是: 谢谢你的帮助! 问题答案: 这意味着结果值将被强制转换为 和 (即可序列化的比较器) 请注意,在进行此类转换时,您 只能 指定一个类(和无限数量的接口),因为一个类不可能从一个以上的超类继承。

  • 问题内容: Java中“ this”的含义是什么? 问题答案: this 指当前对象 每个非静态方法都在对象的上下文中运行。因此,如果你有这样的课程: 然后调用上会打印 因此,有效地将它用于多种用途: 澄清你在谈论一个字段,当还有其他与该字段同名的东西时 整体引用当前对象 在构造函数中调用当前类的其他构造函数

  • 问题内容: 这个静态函数是来自名称空间的类中的吗? 我该如何解释这个名字?在JRE中的哪个位置定义了此功能?在/ ? 问题答案: 否。实际上是类中的静态成员(不是.NET中的静态成员),它是。的实例。并且是该类的常规(重载)方法。 请参阅http://download.oracle.com/javase/6/docs/api/java/lang/System.html#out。 其实,如果/ /

  • 问题内容: 这段代码在: 最后一行使我感到非常困惑。我不知道的意思。 这些是其他代码: 结果是 我猜想的功能是从中选择所有元素,但是我还没有找到正式的解释。它是什么? 问题答案: builtin.go中的代码用作文档。该代码未编译。 在指出这个函数的最后一个参数是可变参数。可变参数在Go语言规范中进行了说明。 该类型的部分为任何围棋类型替身。

  • 问题内容: 我是Golang的新手,正在做http://tour.golang.org/。谁能向我解释 第1、3、5和7行, 特别是’*’和’&’的作用吗?我的意思是通过在函数声明中提及它们,它们应该/应该做什么?一个玩具的例子: 看起来它们就像我们在C ++中一样。但是我无法将这些概念与此处的内容联系起来。换句话说,当我在Go的函数声明中使用“ *”和“&”时,它们会做什么。 编辑: 我知道引用

  • 问题内容: 而且我仍然无法理解花括号的工作原理,特别是由于诸如简单程序这样的页面: http://wiki.python.org/moin/SimplePrograms 在各处使用大括号。我了解方括号和规则的圆括号,但是我不知道“定义字典”的含义或它们应该代表的含义。 问题答案: Python中使用“大括号”来定义字典。字典是一种将一个值映射到另一个值的数据结构,就像英语词典如何将单词映射到其定义