Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  javascript  >  正文 js onclick事件传参数的方法分析

js onclick事件传参数的方法分析

发布时间:2015-03-08   编辑:www.jquerycn.cn
本文介绍下,在javascript为onclick事件传递参数的方法,分享几个例子,供大家学习参考。

本节内容:
js中的onclick事件传参
 
1、在页面中给方法传参数,有如下的两种方法:

方法1,onclick=cancel(id,patientId);
在js文件中定义cancel方法
如果要把当前对象传过去用onclick="cancel(this,id,patientId)"
js中cancel(obj,id,patientId)

方法2,在js中用

复制代码 代码示例:
jquery$(function(){
var patientId=$("a").attr("patientId");
}),在页面中<tr patientId="${patientId}">

2、onclick事件

一)js修改onclick动作的四种方式
第一种:

复制代码 代码示例:
button.onclick = Function("alert('hello');"); 
 

第二种:

复制代码 代码示例:
button.onclick = function(){alert("hello"); }; 
 

第三种:

复制代码 代码示例:
button.onclick = myAlert; 
 function myAlert(){ 
  alert("hello"); 

 

第四种: 
这种情况更加动态,更为实用,而且还能添加多个函数(添加的事件的顺序即执行顺序)。 
 

复制代码 代码示例:
if(window.addEventListener){ // Mozilla, Netscape, Firefox 
   //element.addEventListener(type,listener,useCapture);  
   button.addEventListener('click', alert('11'), false); 
   button.addEventListener('click', alert('12'), false);//执行顺序11 -> 12 
} else { // IE 
   button.attachEvent('onclick', function(){alert('21');}); 
   button.attachEvent('onclick', function(){alert('22');});执行顺序22 -> 21 

 

实例讲解:  
   

复制代码 代码示例:
button.onclick = Function("alert('31');"); 
    button.onclick = Function("alert('32');"); 
    button.onclick = Function("alert('33');"); //如果这样写,那么将会只有最后一个方法被执行 
 
    button.attachEvent("onclick", function(){alert('41');}); 
    button.attachEvent("onclick", function(){alert('42');}); 
    button.attachEvent("onclick", function(){alert('43');}); //如果这样写,三个方法都会被执行 
 
    //当然,也可以这样写 
    button.onclick = Function("alert('51');"); 
    button.attachEvent("onclick", function(){alert('52');}); 
 
     //对应移除事件  www.jquerycn.cn
    detachEvent('onclick',func);//ie下使用删除事件func 
    removeEventListener('click',func);//Mozilla下,删除事件func   

二)JS动态设置标签的onclick属性

使用JS动态设置标签的onclick属性对应方法,不能直接使用=“方法名” 的方式 
如:

复制代码 代码示例:
document.getElementById("id").onclick =“methodName();”//错误 
正确应使用=funciton(){methodsName} 
document.getElementById("id").onclick = function() {//正确 
 submitHobby(); 

 

补充,设置传参的onclick函数,可以用jquery的click方法,如下:
 

复制代码 代码示例:
$(qtyObj).next().next().click(function(){ 
        auVillusUsed(id0,id1,id2);   
    }); 
$(qtyObj).next().next().click(function(e){ 
    var obj=e.target; 
    //再通过e.target去获取需要的变量参数。 
}); 

您可能感兴趣的文章:
js onclick事件传参数的方法分析
解析jQuery的三种bind/One/Live事件绑定使用方法
jquery数组之存放checkbox全选值示例代码
jQuery中bind,live,delegate与one方法的用法及区别解析
js为onclick赋值传参数的二个例子
事件冒泡是什么如何用jquery阻止事件冒泡
探讨JQUERY JSON的反序列化类 using问题的解决方法
js判断上传文件类型(修正)
Jquery绑定事件(bind和live的区别介绍)
JS动态添加事件的多个方法

[关闭]