我有一个来自表单提交的简单ajax调用。当我调试时它可以工作,即弹出警报,但是在运行它时不起作用?
这对我来说似乎有点神秘。
$(function(){
$("#signUpForm").submit(function(){
var request = $.ajax({
url:"php/newUser.php",
type:"POST"
});
request.done(function(msg){
alert(msg);
});
});
});
如果您在表单的.submit()处理程序上运行ajax调用,则将触发
Ajax请求,但随后该表单将继续提交,从而刷新页面并且从不触发您的回调函数。
相反,您应该event.preventDefault()
在Submit
handler函数的末尾调用,以防止浏览器使用新的HTTP请求正常提交表单。为此,您需要将其event
作为参数添加到回调函数中,如下所示:
$( "#target" ).submit(function( event ) {
alert( "Handler for .submit() called." );
event.preventDefault();
});
它在调试时起作用的原因是,在浏览过程中,所有事情都会缓慢进行,而浏览器无需提交表单。
在编写更复杂的代码前,让我们先来聊聊调试吧。 调试 是指在一个脚本中找出并修复错误的过程。所有的现代浏览器和大多数其他环境都支持调试工具 —— 开发者工具中的一个令调试更加容易的特殊用户界面。它也可以让我们一步步地跟踪代码以查看当前实际运行情况。 在这里我们将会使用 Chrome(谷歌浏览器),因为它拥有足够多的功能,其他大部分浏览器的功能也与之类似。 “资源(Sources)”面板 你的 Chr
我有一个ViewModel处理我的业务逻辑,我正在使用Koin将它注入到我的活动和每个片段中。然而,在我从片段A-片段B导航并导航回片段A之后,我的观察者再次被触发。为什么会发生这种情况?当我返回时,如何阻止这种onChanged被触发? 我尝试将'this'和'view LifecycleOwner'设置为LiveData的LifecycleOwner。 我还尝试将observable移动到on
问题内容: 这是完整的代码: 什么也没出现。但是,如果我删除第一行(),则所有页面均按预期绿色。 我有两个问题: 如何在不删除标签的情况下填写页面? 为什么要删除使其起作用? 问题答案: CSS 属性,百分比值和DOCTYPE 问题的 第一部分 询问如何对您的身高施加100%的高度,其他人多次回答。本质上,在根元素上声明高度: 问题的 第二部分 受到的关注要少得多。我会尽力回答。 为什么去除mak
问题内容: 我有一个已创建的组件: 当我打开此页面时,我的中的每个页面都会被调用。如果我喜欢: 我还可以使用匿名函数: 然后它会按预期工作。为什么会这样? 问题答案: 您需要传递对函数的 引用 ,当您这样做时调用函数并传递给从返回的值。您可以使用以下三个选项之一: 1 。使用 2 。使用箭头功能 3 。或从返回函数
问题内容: 我使用jdi接口创建调试器,并且当我使用MethodEntryRequests启用方法条目跟踪调试程序时,速度降低了数十倍。我为主线程设置了过滤器,并将挂起策略设置为SUSPEND_EVENT_THREAD。Classfilter是有限的,如果我打印任何接收到的事件,它显示的事件不会超过几十个,因此不应接收太多事件。我在本地调试,并且在调试后的java程序中使用了以下命令行: 问题答案
我试图在我的项目中实现这段代码,但不起作用RecycerView:如何捕捉ImageView上的onClick?: 我实现了一个接口来处理RecycerView中的onclick imageview和onclick row。问题是,当我试图在imageview上或在行中单击时,不会发生任何事情。如果我在我的ViewHolder类中尝试同样的方法,效果会很好,因为我可以看到祝酒词。问题是我需要这个工