1

我有以下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);

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

4

2 回答 2

2

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

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

于 2013-07-22T02:20:57.067 回答
0

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

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

JSFiddle 演示在这里

于 2013-07-22T02:25:01.570 回答