Html 对于标签中的属性,ie中的行为不同
对于属性,在IE9和IE10中的执行方式不同。当我点击标签时,IE中的复选框也会被选中,但在其他浏览器中不会 //JSHtml 对于标签中的属性,ie中的行为不同,html,css,Html,Css,对于属性,在IE9和IE10中的执行方式不同。当我点击标签时,IE中的复选框也会被选中,但在其他浏览器中不会 //JS <script type="text/javascript"> function show(){ alert(0); } </script> 函数show(){ 警报(0); } //HTML <table width="100%" border="0" cellspacing="0" cellpaddin
<script type="text/javascript">
function show(){
alert(0);
}
</script>
函数show(){
警报(0);
}
//HTML
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><input type="checkbox" id="test" /></td>
<td><label for="test"><a href="javascript:show()">click</a></label></td>
</tr>
</table>
做了一些更改,下面是 但已从标签中删除链接
<label for="test" onclick="javascript:show()"> jitender</label>
jitender
来自:
标签元素的确切默认表示形式和行为,在
特别是它的激活行为可能是什么,如果有的话,应该
匹配平台的标签行为。a的活化行为
针对交互式内容子体的事件的标签元素
标签元素的子元素,以及这些交互内容的任何子元素
子孙后代,一定是无所事事
例如,在平台上,单击复选框标签会选中
复选框,单击以下代码段中的标签可能会触发
要在输入上运行合成单击激活步骤的用户代理
元素,就好像元素本身是由用户触发的:
[…截取的代码示例…]
在其他平台上,行为可能只是为了集中控件,或者
没什么
这些规范似乎给用户留下了很大的自由,尽管基本上,他们说只要点击一个标签,如果一个浏览器真的有要做什么,那么它就应该做当前平台上通常发生的事情
例如,如果我没记错的话,在Windows中,当您单击标签(在Wdinows表单中)时,复选框也会收到单击,因此这是在Windows中运行的浏览器中应该发生的情况
同样,因为有很多自由,几乎每个浏览器都做它喜欢做的事情
如果问题不是很清楚,那就是如何避免这种行为,那么您可能必须使用jquery或javascript以某种方式解决它。在IE10中进行了第一次快速测试后,这似乎起到了作用:
<label for="test">
<a href="#" onclick="show(); return false;">jitender</a>
</label>
为什么不在关联的输入元素上使用onfocus或onchange事件呢?我认为这是未定义的行为。您为“单击”文本指定了两种不同的含义:绑定到复选框的标签和链接。我认为哪一个优先是不明确的。