<!DOCTYPE HTML PUBLIC "-//WC3/DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<body>
<label>A label
<input type="button" value="First" onClick="alert('First');" />
<input type="button" value="Second" onClick="alert('Second');" />
</label>
</body>
</html>
在Firefox 3.6.8中尝试了这段代码。当我点击“第一个”时,它会显示“第一个”。当我点击“秒”时,它显示“第二个,然后是”第一个“?由于内联标签(标签)中的块级标签(输入),这是一个奇怪的onClick行为吗?
答案 0 :(得分:1)
是的,它发生在很多浏览器中(以及我所安装的所有浏览器),并且它发生在span标签(也是内联的)。
如果这是表格,则应为:
<label for="First">First</label>
<input type="button" value="First" id="First" onclick="alert('First');" />
<label for="Second">Second</label>
<input type="button" value="Second" id="Second" onclick="alert('First');" />
如果没有,请尝试使用span标签?
答案 1 :(得分:0)
您的按钮嵌套在单个label
元素中。当您点击第二个button
时,Firefox会激活label
,然后激活第一个button
。你应按照@jamie-wilson的建议划分你的label
。