nam: IE und getAttribute

Beitrag lesen

Hallo!

Ich muss mittels Javascript überprüfen ob in einem form-Tag ein Attribut 'lang' vorhanden ist. Wegen IE (<8) kann ich hasAttribute nicht verwenden und versuchte es über !!el.getAttribute('foo').

Nun hat aber der IE bis und mit Version 7 die spezielle Eigenschaft, bei getAttribute nicht nur Attribute sondern auch Kindelemente mit name="foo" zurückzugeben. Im folgenden vereinfachten Bsp. zeigt IE den alert an, alle anderen Browser nicht.

  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"  
    "http://www.w3.org/TR/html4/strict.dtd">  
<html>  
    <head>  
        <title>Test</title>  
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">  
        <script type="text/javascript">  
        	window.onload = function() {  
        		var t = document.getElementById("myElem");  
        		if(!!t.getAttribute('lang')) {  
        			alert('getAttribute found:' + t.getAttribute('lang'));  
        		}  
        	};  
        </script>  
    </head>  
    <body>  
    	<h1>Problem in IE</h1>  
		<form action="#" method="POST" id="myElem">  
			<div>  
			<input type="text" name="lang"><span>foobar</span>  
			</div>  
		</form>  
    </body>  
</html>  

Wie kann ich das umgehen?
Dank und Gruss,
Mathias