一个页面中有多个控件需要调用某函数,并且要给该函数传递值。有没有办法在被调用函数中通过某种方式,在不传递参数的情况下,得到调用者的引用,进而取得对应控件的值.

一般的写法是
<script>

function test(object)
{
alert(object.value);
}

</script>

<input type="button" name="one" value="one" onclick="test(this)">

<input type="button" name="tow" value="tow" onclick="test(this)">


不知道通过什么方式可以实现如下

<script>

function test()
{
var object = // 得到调用者的引用 object
alert(object.value);
}

</script>

<input type="button" name="one" value="one" onclick="test()">

<input type="button" name="tow" value="tow" onclick="test()">
评论
qqwjz 2008-03-28
问题解决了:

function test()
{
var object =event.srcElement // 得到调用者的引用 object
alert(object.value);
}
myy 2008-03-28
JScript

caller 属性
请参阅
function 语句

应用于:Function 对象
要求
版本2
返回一个对函数的引用,该函数调用了当前函数。

functionName.caller
functionName 对象是所执行函数的名称。

说明
对于函数来说,caller 属性只有在函数执行时才有定义。如果函数是由 JScript 程序的顶层调用的,那么 caller 包含的就是 null 。

如果在字符串上下文中使用 caller 属性,那么结果和 functionName.toString 一样,也就是说,显示的是函数的反编译文本。

下面的例子说明了 caller 属性的用法:

function CallLevel(){
if (CallLevel.caller == null)
return("CallLevel was called from the top level.");
else
return("CallLevel was called by another function.");
}
要求
版本2

请参阅
function 语句

应用于:Function 对象
发表评论

提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则

您还没有登录,请登录后发表评论

qqwjz
搜索本博客
博客分类
最近加入圈子
最新评论