以下代码使用jQuery 1.4.4和jQuery工具1.2.5
在无线电点击上,它会在IE 8中将$(event.target).attr('id')
评估为“未定义”。也可能在其他版本的IE上。它在大多数其他浏览器上按预期工作。
在评论$('form').validator()
的实例化时,即使在IE上,代码也按预期运行。
请告知。
<!DOCTYPE html>
<html>
<head>
<title>jquery tools validator and IE issue on event.target</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script src="http://cdn.jquerytools.org/1.2.5/full/jquery.tools.min.js?foo"></script>
<script>
$(document).ready(function(){
$('form').validator();
$('[type=radio]').click(function(event){
alert($(event.target).attr('id'));
});
});
</script>
</head>
<body>
<form>
<input type="radio" name="aee-ee-eight" id="id-0" value="0" checked="checked" tabindex="0">
<input type="radio" name="aee-ee-eight" id="id-1" value="0" tabindex="1">
<input type="radio" name="aee-ee-eight" id="id-2" value="0" tabindex="2">
<input type="submit"><br/>
</form>
</body>
</html>
答案 0 :(得分:0)
我认为您的问题是event.target
尝试使用此代码来获取目标值。
我会将你的功能改为:
$(document).ready(function(){
$('form').validator();
$('[type=radio]').click(function(){
alert($(this).attr('id'));
});
});