webForumDet fria alternativet

Körningsfel i Microsoft JScript: Ett objekt förväntas.

JavaScriptur Javascript

4 svar · 1 537 visningar · startad av icaaq

Medlem sedan okt. 20005 273 inlägg
Frågan#1

Jag har denna i min body tag:

[red]
<body onload="[b]updateMessage()[/b]; describe('<br/>icaaq<br/>asdf');">
[/red]

men jag får ett felmess som lyder:
Körningsfel i Microsoft JScript: Ett objekt förväntas.
Här kommer hela koden:

[red]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
	<head>
		<title>update</title>
		<meta name="GENERATOR" content="Microsoft Visual Studio 7.0">
		<meta http-equiv="Refresh" content="10;URL=update.aspx">
	</head>
	<script language="JavaScript">
	var Id = "desc";
	function describe(string){
		if(parent.document.layers){
			with (parent.document[Id].parent.document){
				open();
				write(string);
				close();
			}
		} else if (parent.document.all){
			parent.document.all[Id].innerHTML = string;
		} else if (parent.document.getElementById){
			jxdocrange = parent.document.createRange();
			jxdocrange.setStartBefore(parent.document.getElementById(Id));
			while (parent.document.getElementById(Id).hasChildNodes()){
				parent.document.getElementById(Id).removeChild(document.getElementById(Id).lastChild);
			}
			parent.document.getElementById(Id).appendChild(jxdocrange.createContextualFragment(string));
		}
	}
</script>
<SCRIPT LANGUAGE='JavaScript'>
<!--
function updateMessage()
{

parent.document.getElementById('rad1').innerHTML='[05:46] ';
parent.document.getElementById('user1').innerHTML='[green]Kommer in p&#229; chatten[/green]';
parent.document.getElementById('rad2').innerHTML='[04:49] kk';
parent.document.getElementById('user2').innerHTML='<font style='color:red;'>L&#228;mmnar Chatten.</font>';
parent.document.getElementById('rad3').innerHTML='[04:49] kk';
parent.document.getElementById('user3').innerHTML='';
parent.document.getElementById('rad4').innerHTML='[04:49] kk';
parent.document.getElementById('user4').innerHTML='';
parent.document.getElementById('rad5').innerHTML='[04:49] kk';
parent.document.getElementById('user5').innerHTML='';
parent.document.getElementById('rad6').innerHTML='[04:49] kk';
parent.document.getElementById('user6').innerHTML='';
parent.document.getElementById('rad7').innerHTML='[04:49] kk';
parent.document.getElementById('user7').innerHTML='';
parent.document.getElementById('rad8').innerHTML='[04:49] kk';
parent.document.getElementById('user8').innerHTML='';
parent.document.getElementById('rad9').innerHTML='[04:49] kk';
parent.document.getElementById('user9').innerHTML='[green]Kommer in p&#229; chatten[/green]';
parent.document.getElementById('rad10').innerHTML='[04:49] ';
parent.document.getElementById('user10').innerHTML='<font style='color:red;'>L&#228;mmnar Chatten.</font>';
parent.document.getElementById('rad11').innerHTML='[04:49] ';
parent.document.getElementById('user11').innerHTML='';
parent.document.getElementById('rad12').innerHTML='[04:49] ';
parent.document.getElementById('user12').innerHTML='';
parent.document.getElementById('rad13').innerHTML='[04:49] ';
parent.document.getElementById('user13').innerHTML='';
parent.document.getElementById('rad14').innerHTML='[04:49] ';
parent.document.getElementById('user14').innerHTML='';
parent.document.getElementById('rad15').innerHTML='[04:49] ';
parent.document.getElementById('user15').innerHTML='[green]Kommer in p&#229; chatten[/green]';
parent.document.getElementById('rad16').innerHTML='[04:49] ';
parent.document.getElementById('user16').innerHTML='<font style='color:red;'>L&#228;mmnar Chatten.</font>';
parent.document.getElementById('rad17').innerHTML='[04:49] ';
parent.document.getElementById('user17').innerHTML='';
parent.document.getElementById('rad18').innerHTML='[04:49] ';
parent.document.getElementById('user18').innerHTML='';
}

// -->

</SCRIPT>

	<body onload="updateMessage(); describe('<br/>icaaq<br/>asdf<br/>asdf<br/>icaaq<br/>icaaq<br/>peter<br/>');">
		<form name="update" method="post" action="update.aspx" id="update">
<input type="hidden" name="__VIEWSTATE" value="dDwtMTQ2MzI1NTYzMDt0PDtsPGk8MT47aTwzPjs+O2w8dDxwPGw8VGV4dDs+O2w8XDxTQ1JJUFQgTEFOR1VBR0U9J0phdmFTY3JpcHQnXD4NClw8IS0tDQpmdW5jdGlvbiB1cGRhdGVNZXNzYWdlKCkNCnsNCg0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyYWQxJykuaW5uZXJIVE1MPSdbMDU6NDZdICdcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyMScpLmlubmVySFRNTD0nW2dyZWVuXUtvbW1lciBpbiBwJiMyMjlcOyBjaGF0dGVuWy9ncmVlbl0nXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmFkMicpLmlubmVySFRNTD0nWzA0OjQ5XSBraydcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyMicpLmlubmVySFRNTD0nXDxmb250IHN0eWxlPSdjb2xvcjpyZWRcOydcPkwmIzIyOFw7bW1uYXIgQ2hhdHRlbi5cPC9mb250XD4nXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmFkMycpLmlubmVySFRNTD0nWzA0OjQ5XSBraydcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyMycpLmlubmVySFRNTD0nJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JhZDQnKS5pbm5lckhUTUw9J1swNDo0OV0ga2snXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndXNlcjQnKS5pbm5lckhUTUw9JydcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyYWQ1JykuaW5uZXJIVE1MPSdbMDQ6NDldIGtrJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3VzZXI1JykuaW5uZXJIVE1MPScnXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmFkNicpLmlubmVySFRNTD0nWzA0OjQ5XSBraydcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyNicpLmlubmVySFRNTD0nJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JhZDcnKS5pbm5lckhUTUw9J1swNDo0OV0ga2snXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndXNlcjcnKS5pbm5lckhUTUw9JydcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyYWQ4JykuaW5uZXJIVE1MPSdbMDQ6NDldIGtrJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3VzZXI4JykuaW5uZXJIVE1MPScnXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmFkOScpLmlubmVySFRNTD0nWzA0OjQ5XSBraydcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyOScpLmlubmVySFRNTD0nW2dyZWVuXUtvbW1lciBpbiBwJiMyMjlcOyBjaGF0dGVuWy9ncmVlbl0nXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmFkMTAnKS5pbm5lckhUTUw9J1swNDo0OV0gJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3VzZXIxMCcpLmlubmVySFRNTD0nXDxmb250IHN0eWxlPSdjb2xvcjpyZWRcOydcPkwmIzIyOFw7bW1uYXIgQ2hhdHRlbi5cPC9mb250XD4nXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmFkMTEnKS5pbm5lckhUTUw9J1swNDo0OV0gJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3VzZXIxMScpLmlubmVySFRNTD0nJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JhZDEyJykuaW5uZXJIVE1MPSdbMDQ6NDldICdcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyMTInKS5pbm5lckhUTUw9JydcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyYWQxMycpLmlubmVySFRNTD0nWzA0OjQ5XSAnXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndXNlcjEzJykuaW5uZXJIVE1MPScnXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmFkMTQnKS5pbm5lckhUTUw9J1swNDo0OV0gJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3VzZXIxNCcpLmlubmVySFRNTD0nJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JhZDE1JykuaW5uZXJIVE1MPSdbMDQ6NDldICdcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyMTUnKS5pbm5lckhUTUw9J1tncmVlbl1Lb21tZXIgaW4gcCYjMjI5XDsgY2hhdHRlblsvZ3JlZW5dJ1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JhZDE2JykuaW5uZXJIVE1MPSdbMDQ6NDldICdcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyMTYnKS5pbm5lckhUTUw9J1w8Zm9udCBzdHlsZT0nY29sb3I6cmVkXDsnXD5MJiMyMjhcO21tbmFyIENoYXR0ZW4uXDwvZm9udFw+J1w7DQpwYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JhZDE3JykuaW5uZXJIVE1MPSdbMDQ6NDldICdcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VyMTcnKS5pbm5lckhUTUw9JydcOw0KcGFyZW50LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyYWQxOCcpLmlubmVySFRNTD0nWzA0OjQ5XSAnXDsNCnBhcmVudC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndXNlcjE4JykuaW5uZXJIVE1MPScnXDsNCn0NCg0KLy8gLS1cPg0KDQpcPC9TQ1JJUFRcPg0KDQo7Pj47Oz47dDxwPGw8VGV4dDs+O2w8XDxici9cPmljYWFxXDxici9cPmFzZGZcPGJyL1w+YXNkZlw8YnIvXD5pY2FhcVw8YnIvXD5pY2FhcVw8YnIvXD5wZXRlclw8YnIvXD47Pj47Oz47Pj47Ptb6vcYkR8uQc1LFzMQ9cHL6jHUk" />

		
		</form>
	</body>
</html>
[/red]

Vad är det som är fel??

Mvh icaaq

Medlem sedan dec. 20025 483 inlägg
#2

Till och börja med så kommer ingen av raderna i funktionen updateMessage() att exekveras, därför att du använder metoden getElementById() för att referera till element som inte finns ( 'rad1', 'user1', o.s.v. ).

I funktionen describe() finns ett liknande scenario; du använder metoder för att referera till ett objekt ( 'desc' ) som inte finns i webbsidan.

Jag misstänker att detta inte är den fullständiga koden( ? ).

:)

Medlem sedan okt. 20005 273 inlägg
#3

Du har helt rätt denna kod ligger i en IFrame som uppdaterar "taggar" i en annan frame.

Men frågan återstår varför får jag feledelandet??

Mvh icaaq

Medlem sedan juni 20004 308 inlägg
#4

Tar jag bort alla referenser till objekt som ligger utanför den aktuella framen (parent.document...) så är det enda felmeddelandena jag får beroende på dessa rader;

parent.document.getElementById('user2').innerHTML='<font style='color:red;'>Lämmnar Chatten.</font>';
parent.document.getElementById('user10').innerHTML='<font style='color:red;'>Lämmnar Chatten.</font>';
parent.document.getElementById('user16').innerHTML='<font style='color:red;'>Lämmnar Chatten.</font>';

och det är då variabeltermineringen som spökar.

parent.document.getElementById('user2').innerHTML="<font style='color:red;'>Lämmnar Chatten.</font>";
parent.document.getElementById('user10').innerHTML="<font style='color:red;'>Lämmnar Chatten.</font>";
parent.document.getElementById('user16').innerHTML="<font style='color:red;'>Lämmnar Chatten.</font>";
Medlem sedan okt. 20005 273 inlägg
#5

Tack jag bytte till " och då funkade det.....

Mvh icaaq

137 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)