阻止<a>标签默认行为

  • 方式一 (通过return false)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>阻止事件的默认行为</title> <script type="text/javascript">
window.onload = function() {
var a = document.getElementById('mya');
a.onclick = function() {
alert(this.innerHTML);
/*通过return false; 实现阻止了点击a标签后,页面的跳转*/
return false;
}
}
</script>
</head> <body>
<a href="http://www.baidu.com" id="mya">百度一下</a>
</body> </html>
  • 方式二 (通过javascript:; 或者 javascript:void(0);)
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title>阻止事件的默认行为</title>
<script type="text/javascript">
window.onload = function() {
var a = document.getElementById('mya');
a.onclick = function() {
alert(this.innerHTML);
}
}
</script>
</head> <body>
<a href="javascript:void(0);" id="mya">百度一下</a> <!--通过javascript:void(0)-->
</body> </html>

表单提交

  • 方式一 submit提交不验证
<form action="/index">
<input type="text" />
<input type="submit" value="提交"/>
</form>
  • 列表项目

阻止表单提交

有2种方式:
第一种:<form>提交事件
第二种:提交按钮

  • <form> 提交事件
// 不推荐,写法不优雅
<form onsubmit="go(event)"></form>
<script>
function go(e){
e.preventDefault();
}
</script>
// 不推荐,因为无法对表单数据进行验证
<form action="/register" method="post" onsubmit="return false;"></form>
// 推荐写法
<form action="/register" method="post">
<input type="text" name="username" placeholder="请输入注册用户名"><br />
<input type="password" name="pwd" placeholder="请输入初始密码"><br />
<input type="password" name="aginpwd" placeholder="请再次输入密码"><br />
<input type="submit" value="注册" class="login_btn">
</form>
<script>
var form = document.forms[0],
submit = document.querySelector(".login_btn"),
inputBtn = document.getElementsByTagName("input"); form.onsubmit = function(e) {
e.preventDefault();
// return false; 也可以阻止表单提交
}
</script>
  • 提交按钮 <input type="submit"/>
// 不推荐,因为无法对表单数据进行验证
<form action="/register" method="post">
<input type="text" name="username" placeholder="请输入注册用户名"><br />
<input type="password" name="pwd" placeholder="请输入初始密码"><br />
<input type="password" name="aginpwd" placeholder="请再次输入密码"><br />
<input type="submit" value="注册" class="login_btn" onclick="return false">
</form>
// 不推荐,写法不优雅
<form action="/register" method="post">
<input type="text" name="username" placeholder="请输入注册用户名"><br />
<input type="password" name="pwd" placeholder="请输入初始密码"><br />
<input type="password" name="aginpwd" placeholder="请再次输入密码"><br />
<input type="submit" value="注册" class="login_btn" onclick="nogo(event);">
</form>
<script>
function nogo(e){
e.preventDefault();
}
</script>
// 推荐写法
<form action="/register" method="post">
<input type="text" name="username" placeholder="请输入注册用户名"><br />
<input type="password" name="pwd" placeholder="请输入初始密码"><br />
<input type="password" name="aginpwd" placeholder="请再次输入密码"><br />
<input type="submit" value="注册" class="login_btn">
</form>
<script>
var form = document.forms[0],
submit = document.querySelector(".login_btn"),
inputBtn = document.getElementsByTagName("input"); submit.onclick = function(e){
e.preventDefault();
// return false; 也可以阻止表单提交
}
</script>
  • 提交按钮 <button>注册</button>
// 不推荐,因为无法对表单数据进行验证
<form action="/register" method="post">
<input type="text" name="username" placeholder="请输入注册用户名"><br />
<input type="password" name="pwd" placeholder="请输入初始密码"><br />
<input type="password" name="aginpwd" placeholder="请再次输入密码"><br />
<button onclick="return false">注册</button>
</form>
// 不推荐,写法不优雅
<form action="/register" method="post">
<input type="text" name="username" placeholder="请输入注册用户名"><br />
<input type="password" name="pwd" placeholder="请输入初始密码"><br />
<input type="password" name="aginpwd" placeholder="请再次输入密码"><br />
<button onclick="nogo(event);">注册</button>
</form>
<script>
function nogo(e){
e.preventDefault();
}
</script>
// 推荐写法
<form action="/register" method="post">
<input type="text" name="username" placeholder="请输入注册用户名"><br />
<input type="password" name="pwd" placeholder="请输入初始密码"><br />
<input type="password" name="aginpwd" placeholder="请再次输入密码"><br />
<button class="login_btn" onclick="nogo(event);">注册</button>
</form>
<script>
var form = document.forms[0],
submit = document.querySelector(".login_btn"),
inputBtn = document.getElementsByTagName("input"); submit.onclick = function(e){
e.preventDefault();
// return false; 也可以阻止表单提交
}
</script>

如何阻止<a>标签默认行为和表单提交的更多相关文章

  1. DWZ框架Ajax无刷新表单提交处理流程

    DWZ框架Ajax无刷新表单提交处理流程是: 1.       ajax表单提交给服务器 2.       服务器返回一个固定格式json结构 3.       js会调函数根据这个json数据做相应 ...

  2. js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题

    js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题 js模拟form表单提交数据源码: /** * js模拟form表单提交 * @param ...

  3. 防止表单提交时刷新页面-阻止form表单的默认提交行为

    最近在写 ajax 提交的时候遇到一个问题,在执行 ajax 提交之后,浏览器页面自动刷新了,主要是没有 由于form 表单的默认提交行为.一下是几种阻止 form 表单默认提交行为的方式. 1.使用 ...

  4. 解决MUI阻止a标签默认跳转事件—方法总结

    用过mui的小伙伴们一定不会陌生,有时候真的很烦mui本身会阻止a标签默认跳转.一般只要用了mui的ui组件,比如头部,底部或者弹框,你就不能在用a标签进行跳转了. 注:项目中引用了mui后,可能也会 ...

  5. form表单提交和阻止

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. CSS_简介/语法结构/长度单位/应用方式/标签的样式重置/表单样式重置

    一.CSS简介:  w3c(World Wide Web Consortium):万维网联盟,是规定网页标准的一个组织(叫做Web标准) Web标准:是由w3c和其他标准化组织制定的一系列标准的集合, ...

  7. JQuery阻止表单提交的方法总结 - 使用onsubmit()验证表单并阻止非法提交

    方法1:<form onsubmit="javascript:confirm()"> 方法内返回false阻止表单提交 示例:代码检测textarea内填写的长度,未填 ...

  8. 阻止form表单提交的问题

    阻止form表单提交这种场景可能在生活中,我们经常碰到,而在我们第一印象里面可能我们用return false 去阻止表单默认行为. 但是,有中情况我们用return false 不能阻止表单提交 & ...

  9. vue---阻止默认表单提交的三种方法

    vue在做表单提交的时候,需要用到一些自定义的验证规则,这个时候就需要阻止表单默认的提交方式. 方法一:直接阻止 <form id="form" @submit=" ...

随机推荐

  1. Windows冷门快捷键

    Win+Shift+>或者+<光标键,可以使一个程序,在双屏显示器上左右切换. alt+space快捷键相当于在窗口的标题栏上面右键单击,弹出菜单,选择M键,就可以使用光标键上下左右移动来 ...

  2. 【转帖】NET 的一点历史往事:和 Java 的恩怨

    NET 的一点历史往事:和 Java 的恩怨 https://mp.weixin.qq.com/s?__biz=MzAwNTMxMzg1MA==&mid=2654068672&idx= ...

  3. 使用Spring-boot-admin对Spring boot的服务进行监控

    要进行监控,需要两个Project,一个是Admin Server端,负责监控Spring boot的项目,另一个是Admin Client端,是被监控的Spring boot服务. Admin Se ...

  4. 链表操作Java实现

    单链表 存储结构 public class ListNode { int i; ListNode next; ListNode(int i) { this.i = i; } public String ...

  5. k8s-高可用架构设计

    docker的私有仓库harbor.容器化kubernetes部分组建.使用阿里云日志服务收集日志. 部署完成后,你将理解系统各组件的交互原理,进而能快速解决实际问题,所以本文档主要适合于那些有一定k ...

  6. Codeforces 1237E. Balanced Binary Search Trees

    传送门 这一题是真的坑人,时间空间都在鼓励你用 $NTT$ 优化 $dp$...(但是我并不会 $NTT$) 看到题目然后考虑树形 $dp$ ,设 $f[i][0/1]$ 表示 $i$ 个节点的树,根 ...

  7. cent0S 设置静态ip

    TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=static # static ip,#BOOTPROTO=dhcp # dynamic ...

  8. 9-Perl 条件语句

    1.Perl 条件语句Perl 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块.注意,数字 0, 字符串 '0' . "" , 空 list ( ...

  9. sccrapy 爬虫框架网数据库储存时去重的问题

    from scrapy.exceptions import DropItem #导入异常处理模块 class Baidu03Pipeline(object): def __init__(self): ...

  10. 【ExtJs】在Ext.grid.Panel中,两列的值相乘作为第三列的值的实现

    如: 商品总价=商品单价*商品数量 方法: 商品总价列,使用其renderer属性,为期定义一个方法,该方法将当前record中的另外两列中2个数据相乘后渲染到该商品总价列.