IE单击标签时不选择表单字段隐藏表单字段

时间:2010-02-09 14:41:47

标签: javascript jquery html internet-explorer

我正在使用jQuery隐藏表单字段(我正在操作复选框和单选按钮)。

在FF和Chrome中,当我点击相关标签时,表单字段仍会激活并检查。在IE中,这不会发生。

如何让标签激活IE中的复选框/单选按钮?

3 个答案:

答案 0 :(得分:3)

我之前也经历过这种情况。你可能最好不要将隐藏的字段移出屏幕而不是隐藏它们。

事实上,我确实在SO上提出了这个问题:

IE - hidden radio button not checked when the corresponding label is clicked

答案 1 :(得分:0)

你怎么藏起来的?您可能需要通过一些激进的css将其移出屏幕:

.hidden { position:relative; left: -10000 }

然后切换.hidden类以显示/隐藏元素。

答案 2 :(得分:0)

我也遇到过这种情况。 IE不会更改隐藏表单字段的值。你必须先取消隐藏它们。可能最简单的方法是向允许隐藏表单字段的所有标签添加onclick操作。类似的东西:

$("label.hideablefield").live('click', function(){
  var fid = $(this).attr('for');
  $('#'+ fid).show();
  $('#'+ fid).select(); //or maybe .focus, I'm not sure 
});

显然,这只会打开这个领域。您需要设置切换条件以重新隐藏/取消选择。