设置调用方法还是用你所使用的方式: xxx.onclick=methodName;只不过在定义methodName这样的方法时,取参数变化一下,如下所示:
function methodName(){//括号中无参数
    var arg1=arguments[0];//取第一个参数,下标为0
    var arg2=arguments[1];//取第二个参数,下标为1
   
    ...;
}

解决方案 »

  1.   

    那我想要有参数怎么办?
    element.all.btn3.onclick = function(){ click(src/*参数*/);}不知道你要实现什么东西,前几天写了一个editTable,用htc实现的,一般操作也都有了,地址:http://community.csdn.net/Expert/topic/4332/4332701.xml?temp=.5873377可以看下有没有帮助
      

  2.   

    楼上,你的程序里,用<public:attach  event="onmouseout"   onevent="cancelMoveRow()" />这种形式写的函数,都没有参数,有参数的,都是别的函数内调用的,所以对我还是没什么帮助。我想实现的是一个日历控件,table格式的,里面的每一天都有一个链接,来响应点击事件。yaray(雅睿,生活在别处)的方法,是想用全局变量代替传参吧,我这个是不能这样做的,我有很多链接,每个链接都调同一函数,只是参数不同。
      

  3.   

    一样啊,你可以在element的click事件里判断 event.srcElement.tagName=="A" 是不是为真,如果为真就说明点了链接了,就要处理了
      

  4.   

    element.attachEvent("onclick", fnOnClick)
    我可以这么写,但是文字根本就不响应onclick事件,我点了文字,不进fnOnClick函数啊。
      

  5.   

    function methodName(){
        var arg1=arguments[0];//这是浏览器定义的参数数组,只管使用就行了
        var arg2=arguments[1];
       
        ...;
    }
      

  6.   

    楼上用全局变量代替传参的方法,我这里是不行的。
    如果一个页面上一个函数只有一个地方触发,那用全局变量很容易解决,而我的函数都是有很多地方触发的。
     
    比如我有一个函数methodName,我的table上每天都有一个methodName的链接,第一天的参数是2005、10、1,第二天的参数是2005、10、2……,年和月可以用一个全局变量,但是日呢,存在arguments里面之后,取的时候,应该取哪个?methodName函数只有一个,那不得还是告诉它一个索引值,这样还是得传参,又绕回来了。
      

  7.   

    我没有具体写过htc,能否把你的贴出来看看可以把参数作为全局数组存放,这样也便于从服务器获取数据
    当事件发生时,htc是可以知道触发事件的具体对象的,因此按照这个具体对象的专有属性是可以从参数数组中唯一的取得数据的