Javascript函数不会从按钮单击触发

时间:2013-07-22 02:08:22

标签: javascript javascript-events

我有以下html:

    <input type="text" id="theInput" />

<input id="clickMe" type="button" value="Search" onclick="testFunction(document.getElementById('theInput').value)" /><br>

我试图触发这个:

function testFunction(data)
{
    alert(data);
}

我还尝试了另一种选择,使用:

document.getElementById("clickMe").onclick = testFunction(document.getElementById("theInput").value);

可悲的是,这些方法似乎都没有触发功能。我确定我错过了一些简单的东西,有人可以指出来吗,

2 个答案:

答案 0 :(得分:2)

我进行了测试,发现您的代码没问题,您可以看到demo here。但是,由于您包含javascript函数的方式,我认为它在您的页面中不起作用。您最好将所有脚本放在页面的head标记中。

如果您使用某个框架,请确保在加载所有javascript时执行您的函数和绑定。

答案 1 :(得分:0)

您应该使用addEventListener,它允许您注册多个侦听器,而不是分配onclick,它只允许您向元素添加单击处理程序。见下文:

document.getElementById('clickMe').addEventListener('click', function () {
    alert(document.getElementById('theInput').value);
});

JSFiddle demo here