使用Event.observe可以更好地让页面元素与js代码分离,如下面的代码.
不过,我如果将function test(){}方法变成一个接受参数的方法,那么页面一载入就会执行test弹出消息的方法,而不是等着按钮被点击后执行test,不知道为什么会这样?
注:我用firefox运行,在错误控制台,看到了有如下的异常信息.
[quote]
错误: uncaught exception: [Exception... "Could not convert JavaScript argument" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: file:///C:/Documents%20and%20Settings/Administrator/%E3%83%87%E3%82%B9%E3%82%AF%E3%83%88%E3%83%83%E3%83%97/prototype-1.5.1.2.js :: anonymous :: line 3014" data: no]
[/quote]
有哪位大虾能帮忙解答一下此问题?
<html>
<head>
<title>测试</title>
<script type="text/javascript" src="prototype-1.5.1.2.js"></script>
</head>
<body>
请输入:<input type="text" name="birth" id="birth"/><br/>
<input id="btn_test" type="button" value="测试" />
</body>
</html>
<script type="text/javascript" language="javascript">
Event.observe('btn_test', 'click', test);
function test(){
alert("弹出消息!!!");
}
</script>
不过,我如果将function test(){}方法变成一个接受参数的方法,那么页面一载入就会执行test弹出消息的方法,而不是等着按钮被点击后执行test,不知道为什么会这样?
<html>
<head>
<title>测试</title>
<script type="text/javascript" src="prototype-1.5.1.2.js"></script>
</head>
<body>
请输入:<input type="text" name="birth" id="birth"/><br/>
<input id="btn_test" type="button" value="测试" />
</body>
</html>
<script type="text/javascript" language="javascript">
Event.observe('btn_test', 'click', test("弹出消息!!!"));
function test(msg){
alert(msg);
}
</script>
注:我用firefox运行,在错误控制台,看到了有如下的异常信息.
[quote]
错误: uncaught exception: [Exception... "Could not convert JavaScript argument" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: file:///C:/Documents%20and%20Settings/Administrator/%E3%83%87%E3%82%B9%E3%82%AF%E3%83%88%E3%83%83%E3%83%97/prototype-1.5.1.2.js :: anonymous :: line 3014" data: no]
[/quote]
有哪位大虾能帮忙解答一下此问题?