webForumDet fria alternativet

javascript ska öppna en sida i en div

4 svar · 504 visningar · startad av Calevan

CalevanMedlem sedan maj 20031 133 inlägg
#1

Hej!

Jag har en sida med javascript på som laddar upp en ny sida i en iframe när jag klickar på en länk. Detta har jag gjort med denna kod:

parent.body.location.href="ensida.asp?";

Nu vill jag istället att samma länk ska öppna en sida i en div, inte i en iframe. Hur kan jag skriva då?

tack!

Peter SMedlem sedan dec. 20025 484 inlägg
#2

Något liknande detta kanske:

<script type="text/javascript">

function getFile(file) {
    var obj = false;

    switch (true) {
	case typeof ActiveXObject == "function":
	{
	    obj = new ActiveXObject("Msxml2.XMLHTTP");
	} break;

	case typeof XMLHttpRequest == "object":
	{
	    netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
	    obj = new XMLHttpRequest();
	} break;
    }

    if (obj) {
	 obj.open("GET", file, false);
	 obj.send(null);

	 return obj.responseText;
    }

    return 0;
}

</script>

<a href="java&#115;cript:void(0)" onclick="document.getElementById('div').innerHTML = getFile('http://www.ensida.asp?')">ensida.asp</a>

<div id="div"></div>
CalevanMedlem sedan maj 20031 133 inlägg
#3

det där funkar säkert, men ska man verkligen behöva skapa ett aktiveXobjekt för att ändra det? trodde man kunnde skriva något istället för "parent.body.location.href" som fixade det hela. men det går altså inte?

Peter SMedlem sedan dec. 20025 484 inlägg
#4

Ett ActiveX-objekt gäller ju endast IE.

Om filen redan finns laddad i en frame, kan du göra:

<a href="java&#115;cript:void(0)" onclick="alert(window.frames[[b]'ifr'[/b]].document.getElementsByTagName('HTML').item(0).innerHTML)">iframe content</a>

Men vill du hämta en fil, är det nog det första förslaget som gäller.

CalevanMedlem sedan maj 20031 133 inlägg
#5

ok, tack. då struntar jag nog helt i att försöka ladda in sidan i en div utan låter den vara i sin iframe.

tack!

Genererad på 381 ms · cache AV · v20260730165559-full.f96bc7eb