JavaScript或jQuery模拟点击超链接和按钮
有时候我们需要页面自动点击超链接或者按钮,可以用js或者jQuery利用程序去点击,方法很简单,按钮或超链接代码如下:
<a href="url" target="_blank" onclick="closewin();" id="alink">点击超链接</a>
<button id="btn" onclick="test()">点击按钮</button>
上面是一个超链接和一个按钮,并且超链接和按钮都绑定了点击事件
先看超链接,如果我们打算点击超链接的同时不仅触发事件而且跳转到href的指定链接,可以用:
<script>
document.getElementById("alink").click();
</script>
这样就可以实现上面的功能,但是如果我只想触发事件而不想跳转呢,方法有两个,第一个是href写上href="javascript:;"
另外的方法是引入jQuery,然后用jQuery点击事件触发
<script>
$("#alink").click();
</script>
这样就不会跳转了
如果是按钮的话,直接用以下代码:
<script>
//真正的用程序点击按钮
document.getElementById("btn").click();
//没有点击按钮,只是执行了按钮所绑定的事件
document.getElementById("btn").onclick();
</script>
注释已经注明区别了,虽然原理不一样,但是这里对用户来说效果是一样的
既然js能完成这些功能那么补充一下也可以进行表单的提交,过程和模拟点击类似,只是方法不同
表单的按钮如果是button就和模拟点击一样,绑定一个事件,如果按钮是type="submit",那么给form一个id如:id="form1"那么表单提交可以用下面的方式进行:
<script>
//js提交表单
document.getElementById("form1").submit();
//jQuery提交表单
$("#form1").submit();
</script>
代码很简单,就是用了js中的submit()方法,可以把事件封装到函数中灵活使用,另外提交表单还有一些其他的方法,以上是比较常用的一般方法
JavaScript或jQuery模拟点击超链接和按钮的更多相关文章
- 用js或JQuery模拟点击a标签的操作
一.用js模拟点击a标签的操作. jsp代码: <a id="login" href="${pageContext.request.contextPath}/log ...
- jquery模拟点击A标签的问题
我尝试过多次用jQuery模拟用户点击a标签的功能,但都没有成功,并且困扰了很久. 先看下边的代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <htm ...
- JQuery模拟点击页面上的所有a标签,触发onclick事件
注意: 这种方法需要给所有的a标签加上id属性 页面加载完成模拟点击所有的a标签: <script> $(function () { // 模拟点击页面上的所有a标签,触发onclick事 ...
- jquery模拟点击事件
在某些情况下,我们需要自动执行一些点击事件.比如:一些 tab 一般是通过点击事件来加载不同的数据内容. 而如果要页面加载完直接显示第三个 tab,怎么办呢?此时就需要用到 jQuery 的模拟点击事 ...
- Javascript和jquery事件--点击事件和触发超链接
前面的不过是一些基础的知识,真正的一些事件还是有点不同.还有一些命名空间的问题.不过现在ie也开始接受W3C标准,而且平时开发也很少考虑ie了,一些事件就不考虑ie了. 点击事件--click 大部分 ...
- jQuery模拟点击A标记
这个问题弄了半小时没想明白,后来觉得是这样的. 菜单 <li class="menu"><a href="xxx.com" target=&q ...
- jquery【点击】导航按钮的来回切换
先获取元素的属性值,根据属性值进行判断,点击时对属性进行设置 <i class="layui-icon layui-icon-shrink-right" id="n ...
- jqgrid 点击列头的超链接或按钮时,不触发列排序事件
接上篇文章:jqgrid 将列头设置为超链接或按钮 如果在列头设置了超链接或按钮,在点击超链接或按钮时会触发列的排序事件. 原由:点击超链接/按钮会触发排序的冒泡事件 解决方法:点击超链接/按钮时,阻 ...
- jqgrid 将列头设置为超链接或按钮
有时,需要将某个列头设置为超链接或按钮,点击超链接或按钮能够跳转至其他页面(或执行一个事件操作). 可以把 label 值设置成一个a标签或button 代码如下: colModel: [{ labe ...
随机推荐
- Java-LinkedHashSet
如下: package 集合类.Set类; import java.util.Arrays; import java.util.HashSet; import java.util.LinkedHash ...
- Java基础-CGLIB动态代理
JDK的动态代理机制只能代理实现了接口的类,而不能实现接口的类就不能实现JDK的动态代理,cglib是针对类来实现代理的,他的原理是对指定的目标类生成一个子类,并覆盖其中方法实现增强,但因为采用的是继 ...
- 解决SSH无密码登陆后又需要密码登陆
主节点CentOS_Master 从节点Slave_1. 我想着可能是 /etc/ssh/sshd_config下的那个公钥文件路径不对,看了下home/hxsyl/.ssh/authorized_k ...
- junit加载
Run as junit 不会出现,把junit 包倒入lib文件夹中,在类的后面加上extends TestCase,此时上方会导入一个包:import junit.framework.TestCa ...
- poj1631Bridging signals(最长单调递增子序列 nlgn)
Bridging signals Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 12251 Accepted: 6687 ...
- 关于API的设计与实现
http://blog.csdn.net/horkychen/article/details/46612899 API的设计是软件开发中一个独特的领域.最主要的特殊点在于API是供开发者使用的界面,即 ...
- Spring学习6-Spring整合Struts2
一.Spring为什么要整合Struts2 Struts2与Spring进行整合的根本目的就是要让 Spring为Struts2的Action注入所需的资源对象,它们整合的原理则是只要导入了s ...
- MyEclipse------从MySQL取出图片
showImage.jsp <%@ page language="java" import="java.util.*" pageEncoding=&quo ...
- Redis介绍以及安装(Linux与windows)
1.liunux系统 redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的 不足,它支持存储的value类型 ...
- Ubuntu技巧之 is not in the sudoers file解决方法
转自:http://www.linuxidc.com/Linux/2010-12/30386.htm 1)进入到root用户下. 2)添加文件的写权限.也就是输入命令"chmod u+w / ...