Ich habe ein seltsames Problem mit dem Zählen von Formelementen in jQuery. Während ich es umgehen kann, habe ich mich gefragt, ob jemand weiß, warum gibt es einen Unterschied zwischen Browsern mit dem folgenden Beispiel?jQuery Form Eingabe Anzahl anders in IE
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>IE Test</title>
<meta name="description" content="" />
<meta name="keywords" content="" />
<meta name="author" content="" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
alert($('form :input').length);
});
</script>
</head>
<body>
<div id='wrapper'>
<div id='header'>
<form action='#' method='POST'>
<input type='text' name='title' value='Hotdog Fanatic'></input>
</form>
</div>
</div>
</body>
IE 6/7/8 gib mir alle ein Ergebnis von 2, während FF, Chrom, Opera und Safari alle Zählung 1 abgestimmt Element.
Wenn ich den Selektor nach einem beliebigen Attribut zu filtern, scheint die Anzahl richtig. Beispiel: form :input[name]
oder form :input[type]
als Selektor gibt nur ein angepasstes Element in IE zurück.
Weiß jemand, warum das sein könnte?
Danke!
Baps.
Wahr. Das Schließen von Eingabe-Tags wird nicht mit W3C validiert. –
Sehr gut, das war mir nicht aufgefallen. Vielen Dank! – Baps
Gern geschehen. – SLaks