JQuery 绑定事件时传递参数的实现方法

如题,比如我想在$(":text").bind("keyup",funcionName);将当前的文本框作为参数传递给 functionName所代表的函数,应该怎么写?试了一 下$(":text").bind("keyup",functionName(this));这样是不对的!

1.直接在funcionName 里用 this 就是 对 触发时间的元素本身的引用,如果你需要funcionName有更多参数的话,可以这样用:

2.$(":text").bind("keyup",function(){
funcionName(arg1,arg2,arg3,arg4);
});

3.有个event名称的参数可以传
$(:text").bind("keyup", function(event) {
event = event || window.event;
var target = event.target; //这个就是触发事件的控件
});

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<script type="text/javascript" src="js/jquery-1.6.1.min.js"></script>
</head>
<body>
<div id="div1" value="div1Value" style="border: 1px red solid;padding:5px;"></div>
</body>
</html>
<script type="text/javascript">
$("#div1").append($("<input type='button' value='按钮' id='cbutton1' name='cbutton1'/>"));

$("#cbutton1").bind("click",{"id":"111","name":"aaa"},getData);

function getData(d){
alert(d.data.id);
alert(d.data["name"])
var dd=JSON.stringify(d.data);//将传过来的参数转换成json字符串
alert(dd);
alert(dd.split(',').length);
}
</script>

 

jQueryObject.unbind( [ events [, handler ]] )

// 移除为所有button元素的click事件绑定的事件处理函数btnClick2
// 点击按钮,只执行btnClick1
$buttons.unbind("click", btnClick2);
posted @ 2015-05-07 10:09  隔壁小杨  阅读(1065)  评论(0编辑  收藏  举报