【问题标题】:Onclick event with an argument = Not implemented?带参数的 Onclick 事件 = 未实现?
【发布时间】:2013-05-30 12:20:08
【问题描述】:

希望在这里得到一些建议,我对 javascript 和一般编码都很陌生,所以我确信有更好的方法来做我需要的事情,但是非常感谢任何帮助......

我有一段 javascript 可以创建一个表,行数是动态的。 当我调用 javascript 时,我传递了一些信息,其中之一是数组。该数组的每个元素都包含一长串文本。

所以我创建了 X 行显示一些识别数据的表。我还为每一行创建了一个带有点击事件的单选按钮。这个想法是,当用户单击单选按钮时,数组元素中的长字符串将显示在单独的文本框中。

I have managed to get to the point that the table is created and that when the radio button is selected the onclick event fires and loads a piece of data into the txt box.但是,该数据是硬编码的(txtbox.value=array[1]) 我现在要做的是从数组中加载相关字符串,具体取决于单击的单选按钮。 如果我将 onclick 事件更改为 onclick=function(ID) 并将我的函数更改为 function(ID) 我收到错误“未实现”

它似乎是从 onclick 事件而不是函数生成的... 以下作品:

R1.onclick=clicktest;

function clicktest()
{
txtbox.value=array[1]
}

以下会产生错误

R1.onclick=clicktest(1);

function clicktest(id)
{
txtbox.value=array[id]
}

抱歉,如果这不是很清楚。

【问题讨论】:

    标签: javascript onclick


    【解决方案1】:

    使用此代码

    R1.onclick=clicktest(1);
    

    您正在执行 clicktest(1) 并将结果分配为事件处理程序。

    你可以通过这个来改变它以使其工作

    R1.onclick = function() { clicktest(1) };
    

    【讨论】:

    • 太棒了!我可以厚着脸皮问你上面是怎么工作的,我以前没见过?
    • @user2436469:我将 R1.onclick 分配给内联函数声明。可以像任何其他类型一样将函数分配给变量(与var a = 4; 没有区别)
    猜你喜欢
    • 1970-01-01
    • 2020-10-30
    • 2018-06-24
    • 1970-01-01
    • 2019-12-27
    • 2021-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多