【发布时间】:2013-10-28 14:08:43
【问题描述】:
我在 HTML 中定义了一组单选按钮,如下所示:
<input type="radio" name="group" id="rad1" value="rad1" onClick="doStuff(this.id)">Option 1<br>
<input type="radio" name="group" id="rad2" value="rad2" onClick="doStuff(this.id)">Option 2<br>
就在 </body> 标记之前,我定义了以下 JavaScript 行为:
<script type="text/javascript">
/*<![CDATA[*/
function doStuff(var id){
alert("Doing stuff!");
}
/*]]>*/
</script>
当我运行程序时,页面会按预期在我的浏览器窗口中加载,并且单选按钮允许我单击它们。然而,doStuff() 函数从未被调用(我也使用断点验证了这一点)。
我还尝试了以下方法,看看 inline 是否有所作为,但似乎根本没有调用 JavaScript:
<script type="text/javascript">
/*<![CDATA[*/
alert("JavaScript called!");
main();
function main(){
var group = document.getElementsByName('group');
for(var i=0; i<group.length; i++){
group[i].onclick = function(){
doStuff(this.id);
};
}
}
/*]]>*/
</script>
我的问题是,在这种情况下我需要使用 HTML 和 JavaScript 做些什么特别的事情吗?我的问题是不是否应该使用内联函数调用,或者这是否是您最喜欢的代码编写方式。
【问题讨论】:
标签: javascript html input onclick radio-button