测试代码:
这段代码在Chrome下执行是没有问题的,在IE8下执行通过查看源代码onclick属性确实是去掉了,但是点击按钮还是会响应单击事件。(IE8的版本是8.0.7601.17514)
发现这个问题的时候尝试了很多方法都没有解决,在不经意间执行了2次removeAttr发现问题解决了。
虽然现在还不知道出现这个问题跟解决这个问题的原理,还是想将这个解决方法分享下,也希望有知道为什么的朋友可以解我这个疑惑。
解决以后的代码:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
var topHTML = "<input id='but' type='button' value='提交' onclick='alert(1);' />";
$("body").append(topHTML);
});
$(function(){
$("input").removeAttr('onclick');
});
</script>
</head>
<body>
</body>
</html>
这段代码在Chrome下执行是没有问题的,在IE8下执行通过查看源代码onclick属性确实是去掉了,但是点击按钮还是会响应单击事件。(IE8的版本是8.0.7601.17514)
发现这个问题的时候尝试了很多方法都没有解决,在不经意间执行了2次removeAttr发现问题解决了。
虽然现在还不知道出现这个问题跟解决这个问题的原理,还是想将这个解决方法分享下,也希望有知道为什么的朋友可以解我这个疑惑。
解决以后的代码:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
var topHTML = "<input id='but' type='button' value='提交' onclick='alert(1);' />";
$("body").append(topHTML);
});
$(function(){
$("input").removeAttr('onclick');
$("input").removeAttr('onclick');
});
</script>
</head>
<body>
</body>
</html>