Opera Problem: Namen des Submit Buttons dynamisch verändern funktioniert nicht

BlubBlub

Mitglied
Hi ich versuche den Name des Submit Buttons dynamisch zu vergeben, doch dies funktioniert bei Opera nicht. Bei Firefox, Chrome und dem IE geht das aber einwandfrei.
Vor allem tritt das Problem nur bei dem Submit Button auf, bei einem gewöhnlichen Button funktionierts.

HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">

<html>
	<head>
		<title>Test</title>

		<script type ="text/javascript" src="../jquery-1.5.1.min.js"></script>
		<script type="text/javascript">
			$(document).ready(function(){	
				//$('#myButton').val(' button ');
				document.getElementById('myButton').value = 'button';
				
				//$('#mySubmit').val(' submit ');
				document.getElementById('mySubmit').value = 'submit';
			});
		</script>
	</head>
	
	<body>
		<form>
			<input type="button" id="myButton" value="">
			<input type="submit" id="mySubmit" value="">
		</form>
	</body>
</html>
 
Zuletzt bearbeitet:
Schade, deine Lösung sah echt gut aus, aber bei mir funktioniert sie leider nicht.
Ich habe den Opera 11.1 auf nem Window XP

Vielleicht hab ich da aber auch etwas falsch eingetippt, aber soweit ich erkennen kann
gibts da keinen Syntaxfehler.

HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">

<html>
	<head>
		<title>Test</title>

		<script type ="text/javascript" src="../jquery-1.5.1.min.js"></script>
		<script type="text/javascript">
			$(document).ready(function(){		
				$('#mySubmit').attr('value', 'submitbutton');
			});
		</script>
	</head>
	
	<body>
		<form>
			<input type="submit" id="mySubmit" value="">
		</form>
	</body>
</html>
 
Ich hatte bei meiner Testdatei den "Fehler" gemacht, dass ich die ready-Funktion nicht benutzt hab. Also wurde der Code ausgeführt, bevor der Button überhaupt gerendert wurde.

HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">

<html>
	<head>
		<title>Test</title>
	</head>
	
	<body>
		<form>
			<input type="submit" id="mySubmit" value="">
		</form>
		<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
		<script type="text/javascript">
		$('#mySubmit').attr('value', 'foobar');
		</script>
	</body>
</html>

In dem Link steht ja, dass man irgendwie ein Neuzeichnen erzwingen muss. Z.B. so:

HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">

<html>
	<head>
		<title>Test</title>
	</head>
	
	<body>
		<form>
			<input type="submit" id="mySubmit" value="">
		</form>
		<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
		<script type="text/javascript">
		$(document).ready(function() {
			$('#mySubmit').attr('value', 'foobar').css('position', 'relative');
		});
		</script>
	</body>
</html>

Vielleicht fällt dir was besseres ein als position:relative, immerhin ändert das an der Darstellung nichts.
 
Alles klar, danke für die Tipps. Immerhin weiß ich jetzt, dass er wirklich ein Bug ist und man nicht um ein Workaround herum kommt.
 
Zurück