重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
把setTab里的1改为this就可以达到绑定事件一样的效果。我经常在我的函数里只传一个this对象,然后把要传的参数写在这个对象的一个自定义属性上。这样可以传N个参数而不需要修改函数名,这样的兼容性也很好。因为我们有时只要一个参数,有时要两个参数。看下面的例子转换:
创新互联主营游仙网站建设的网络公司,主营网站建设方案,重庆App定制开发,游仙h5微信平台小程序开发搭建,游仙网站营销推广欢迎游仙等地区企业咨询
a href="#" onclick="setTab(this)" myid="22" mydata="接收我吧"/a
a href="#" onclick="setTab(this)" myid="33"/a
function setTab(em){
var $this=$(em);
var myid=$this.attr("myid");
var mydata=$this.attr("mydata");
$("a").removeClass("hover");
$this.addClass("hover");
alert("这里就是你要的参数可以传N个参数"+myid+"===="+mydata);
}
一句话概括,纯html页面之间的传值可以通过url后面的参数进行比如:
b.html?teacher=xxtime=xxx
回到问题中,首先从a.html到b.html需要一个跳转方式,比方说在a.html页面里面你有一个链接:
a href="b.html" id="toPageB"跳转到b页面/a
剩下的就好办了,依次取得你需要的参数,然后修改页面url:
var dataFromLi=[$("#Teachername").text(),$("#Credit_hour").text()];
$("#toPageB").attr("href","b.html?data="+dataFromLi);
然后在b.html页面解析url,获取参数。
更新,如何根据url获取参数:
window.location.search 会返回所有地址栏从“?”开始的字符串。获取某个参数值可以通过正则,下面是一个简单的获取参数的函数:
function getURLParameter(name) {
return decodeURIComponent((new RegExp('[?|]' + name + '=' + '([^;]+?)(|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null;
}
如果你采用jQuery,你可以用更简单的办法:
$.url().param('data');
循环生成列表的时候为Button加属性就可以了。
tdinput class="button" type="button" value="按钮名称" myvalue="%=name%"/td
不需要each就可以为每个class=button的按钮添加click事件的
$(".button").click(function(){
var name = $(this).attr("myvalue");
alert(name);
});
jquery简介:
jQuery是一套跨浏览器的JavaScript库,简化HTML与JavaScript之间的操作。由John Resig在2006年1月的BarCamp NYC上发布第一个版本。目前是由 Dave Methvin 领导的开发团队进行开发。全球前10000个访问最高的网站中,有59%使用了jQuery,是目前最受欢迎的JavaScript库。
如题,比如我想在$(":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;
//这个就是触发事件的控件
});