Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击按钮时取消表单提交_Javascript_Jquery_Html_Forms - Fatal编程技术网

Javascript 单击按钮时取消表单提交

Javascript 单击按钮时取消表单提交,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我有一张登录表。毫无疑问,它接受用户名/密码。我有两个按钮,提交按钮和取消按钮。 我想做的是当用户点击提交按钮时,登录请求开始处理。用户可以看到登录屏幕8-10秒。当他点击“取消”按钮时,应该允许他取消表单提交(取消登录) 请让我知道怎么做。我知道可以有一个js函数,但我没有遇到过。提前多谢 当用户发送登录请求时,请求和身份验证必须由一些服务器端脚本(如php)处理。因此,在“取消”按钮上添加指向另一个服务器端脚本的链接。此脚本应尝试注销用户。如果他已经登录,他将注销,以便取消操作。在另一种情况

我有一张登录表。毫无疑问,它接受用户名/密码。我有两个按钮,提交按钮和取消按钮。 我想做的是当用户点击提交按钮时,登录请求开始处理。用户可以看到登录屏幕8-10秒。当他点击“取消”按钮时,应该允许他取消表单提交(取消登录)


请让我知道怎么做。我知道可以有一个js函数,但我没有遇到过。提前多谢

当用户发送登录请求时,请求和身份验证必须由一些服务器端脚本(如php)处理。因此,在“取消”按钮上添加指向另一个服务器端脚本的链接。此脚本应尝试注销用户。如果他已经登录,他将注销,以便取消操作。在另一种情况下,如果他没有做任何事情,那么脚本将以什么也不做结束。

您是否尝试过:

function cancel () {
    document.execCommand('Stop')
}

<input type = "button" name="cancel" value = "cancel" onclick = "cancel()" />
功能取消(){
document.execCommand('Stop')
}

这是一个简单的例子,您可以用它创建自己的 html代码

<form name="f1" action="test.jsp" method="get">
    username:<input type="text" name="username">
    password:<input type="password" name='password'>
    <input id="sub" type="submit" name="subm" value="subm">
    <input id="reset" type="button" name="reset" value="reset">
</form>
这只是一个参考,您可以根据自己的要求进行相应的修改和创建

我的建议:

  • “取消”按钮首先隐藏

  • 单击“登录”按钮时,发送登录请求,隐藏或禁用“登录”按钮,并显示“Cancel”按钮。然后为正常登录过程设置默认处理程序:

    $.post('login',params,function(){handler.loginCallback()})

  • 单击“取消”按钮时,用另一个过程替换处理程序:

    handler.loginCallback=function(){…}

    如果登录失败,什么也不做;如果登录成功,请发送另一个注销请求


  • 这取决于等待是如何发生的,如果延迟发生在已经发送到服务器并等待处理的请求中,那么我认为这是不可能的。你在做什么,需要8-10秒?这听起来不像是一个正常的登录过程。在实际提交数据之前是否有客户端等待?重置按钮就是这样做的。我们不需要为此编写任何javascript。
    $(document).ready(function() 
                {
                    $('#sub').click(function(){
                                $('form [name="f1"]').submit();
    
                            });
                    $('#reset').click(function(){                           
                                $('input[name="username"]').val('');
                                $('input[name="password"]').val('');
    
                            });
              });