你的i是全局的变量,当页面渲染完成以后,i = 21 ,在执行alert(i) 肯定会输出 21
最好是给Td加上ID ,然后在onclick是打印该行的ID就好了,不要用 i 。
例如:
for (var i = 1; i <= 20; i++) {
Tr = Tab_MaininsertRow();
Td = TrinsertCell();
Tdid = i;
Tdonclick = function (Td) {
alert(Tdid);
}
}
需要准备的材料分别有:电脑、html编辑器、浏览器。
1、首先,打开html编辑器,新建html文件,例如:indexhtml,编写问题基础代码。
2、在indexhtml中的<script>标签,输入js代码:$('img')click();。
3、浏览器运行indexhtml页面,此时img标签被用js自动点击并打印了相关内容。
也就是说,当前有返回值的函数是getvalue(),那么,现在你再也一个函数,假定是setvalue(),你在setvalue()的方法体内写php代码时,通过$n=getvalue()获取返回值。最后是onclick事件,在需要的地方写 onclick="setvalue()" 即可。
三个方法。DOM0级,DOM2级。
网上流传最广的DOM0级
<div
id="a"
onclick="f(this);">1</div>
function
f(e){
alert(einnerHTML);
}
把this当做参数传入然后调用。
第二个算是混合类型的。严格来说不算是DOM2级。
function
f(){
alert(eventsrcElementinnerHTML);
}
<div
id="a"
onclick="f();">1</div>
获取事件源。
这里有兼容问题。IE用srcElement。FF用的是target。而且如果要在FF运行需要把event当做参数写入。如:
<div
id="a"
onclick="f(event);">1</div>
function
f(e){
alert(etargetinnerHTML);
}
第三个方法DOM2级的。
<div
id="a">1</div>
function
addEv(obj,ev,fn){
if(objattachEvent){//IE模型
objattachEvent("on"+ev,function(){
fncall(obj);
});
}else
if(objaddEventListener){//W3C模型
objaddEventListener(ev,function(){
fncall(obj);
},false);
}else{
obj["on"+ev]
=
fn;
}
}
var
t
=
documentgetElementById('a');
addEv(t,'click',function(){
alert(thisinnerHTML);
});
一般类库和高手都用这种写法。
第一个缺点就是如果不加call
IE就会把this指向window。我做了点修改让他this指向当前对象了。还有一个缺点就是无法删除匿名函数写的事件。
objattachEvent("on"+ev,function(){
fncall(obj);
});
可以把这个function写到一个单独的函数中就可以删除了。不过this就不会指向当前的对象了。
如果想做的完美可以搜索detachEvent匿名函数或attachEvent匿名函数。
如果还不懂可以M我。
以上就是关于请我这种onclick事件,点击获取是当前行数的内容全部的内容,包括:请我这种onclick事件,点击获取是当前行数的内容、js如何自动点击onclick、怎么通过onclick 事件获取JS的函数返回值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)