webForumDet fria alternativet

Ändra brädd på tabellkolumner?

JavaScriptur Javascript

19 svar · 597 visningar · startad av Jesper T

Medlem sedan nov. 20017 144 inlägg
Frågan#1

1.) Finns det något smart sätt att ändra tabellbredd på kolumner?

2.) Finns det något sätt att lägga in sidans(pUrl) kod i form1.pagesrc? Jag har gjort ett taffligt försök.
(I detta exempel så kommer allt utom sidinnehållet i den inlänkade sidan med.)

write("<html><body id=\"bdy\"style=\"font:tahoma;margin:2px;background: url(imgs/"+filetype+") no-repeat center center;\">");
write("<meta http-equiv=\"refresh\" content=\"0;URL="+pUrl+"\"><sc"+"ript>")
write("parent.form1.pagesrc.value=bdy.document.body.outerHTML;")
write("</sc"+"ript></body></html>");
Medlem sedan juni 20004 308 inlägg
#2

Om du använder:
<tr><td id="foo" style="width:100px;" ...
Så kan du sedan använda:
document.getElementById('foo').style.width='200 px';

parent.form1.pagesrc.value=document.getElementById('bdy').outerHTML ?

Medlem sedan feb. 2003774 inlägg
#3
  1. Vet inte om jag förståd rätt, men du vill lägga sidan html kod i pagesrc? outerHTML fungerar inte i Mozilla tex, så denna lösning är nog bättre om du vill ha ett bredare browser-stöd
parent.form1.pagesrc.value = document.documentElement.innerHTML;
Medlem sedan nov. 20017 144 inlägg
#4

Nej, nej, nu så blir värdet detta:

[blue]<BODY id=bdy style="BACKGROUND: url(imgs/ico_web.gif) no-repeat center center; MARGIN: 2px">
<META http-equiv=refresh content=0;URL=[b]docs/test.htm[/b]>
<SCRIPT>parent.form1.pagesrc.value=document.getElementById('bdy').outerHTML</SCRIPT>
</BODY>[/blue]

Jag vill ha källkoden ifrån sidan "test.htm" (fetmarkerad i koden)

Medlem sedan nov. 20017 144 inlägg
#5

Idéer?

Medlem sedan feb. 2003774 inlägg
#6

Förstår faktiskt inte vad du menar, din kod ovan laddar om sidan direkt med test.htm. Då är det inte möjligt att på den sidan ta koden som ska laddas in.

Medlem sedan nov. 20017 144 inlägg
#7

Ok, men då skall jag inte "ladda om sidan". Det jag vill är att få med mig källkoden till docs/test.htm i ett textfält. :) Inget annat.

Medlem sedan feb. 2003774 inlägg
#8

Ok, du befinner dig på, låt oss säga, index.html och vill vidare till test.html. Du vill på test.html ha test.html kod i ett text-fält?
Du kan inte få med dig koden till en ännu inladdad sida. Såvida du inte har en IFRAME.

Medlem sedan nov. 20017 144 inlägg
#9

Jag befinner mig på, låt oss säga, index.html och öppnar en popup i den popupen finns en sida med ett textfält, textfältet skall fyllas med källkod till sidan blaj.html ;)

Medlem sedan feb. 2003774 inlägg
#10

Antingen har jag druckit för lite kaffe, eller så har du inte förklararat ordentligt. ;-)

i popupen (popup.html?), som har ett textfält, vill du ladda in blaj.html, eller? Får inte ihop det logiskt.

Medlem sedan nov. 20017 144 inlägg
#11

Read my lips:textfältet skall fyllas med källkod till sidan blaj.html ;)
Popupen skall helst inte visa något annat utöver textfältet.
Kanske en Iframe med display:none skulle funka.

Medlem sedan feb. 2003774 inlägg
#12

Ja, ge Iframe:s ett name (inte id) och sen kan du accessa den med

var oFrame = window.frames["b"];

och sen kommer du åt dess HTML med:

oFrame.document.documentElement.innerHTML;

Medlem sedan juni 20004 308 inlägg
#13

Satt och lekte lite med MS xml http-objekt. Så här kan du ladda en http-källa till en variabel (istället för att bara alerta den som i exemplet). Sedan kan du använda datat var du vill.

var req=new ActiveXObject("Msxml2.XMLHTTP")
req.onreadystatechange=function() {
	if (req.readyState==4) {
		alert(req.responseText)
	}
}
req.open("GET", "blaj.html",true);
req.send(null)
Medlem sedan dec. 20025 483 inlägg
#14

Och för att det hela även skall fungera i Mozilla:

function getFile(file) {
    var obj = 0;

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

	case typeof XMLHttpRequest == "object":
	    obj = new XMLHttpRequest();
	    break;
    }

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

	return obj.responseText;
    }

    return 0;
}

Du använder funktionen genom att skicka namnet på den sida vars innehåll du vill hämta, t.ex. getFile( "blaj.html" )

:)

Medlem sedan nov. 20017 144 inlägg
#15

För att överföra källkoden med jojoxx exempel till ett textfält så gör jag så här:

function getFile( f ){
	var req=new ActiveXObject("Msxml2.XMLHTTP")
req.onreadystatechange=function() {
	if (req.readyState==4) {
		document.form1.pagesrc.value=req.responseText;
	}
}
req.open("GET", f ,true);
req.send(null)

(Det funkar bra.)
Men hur gör jag med Peter S exempel? Får inte riktigt till det.

(För övrigt rätt tufft!)

Medlem sedan dec. 20025 483 inlägg
#16

Exempel:

var textfalt = getFile( "blaj.html" );

:)

Medlem sedan nov. 20017 144 inlägg
#17

Har provat det men det funkar inte.
Jag vill ha in hela härligheten i detta:
document.form1.pagesrc.value

Medlem sedan dec. 20025 483 inlägg
#18

Du kan inte köra koden innan sidan hunnit ladda klart, d.v.s. du måste ha koden i någon "onload"-händelse t.ex.:

window.onload = function(){
     document.form1.pagesrc.value = getFile( "blaj.html" );
};

:)

Medlem sedan nov. 20017 144 inlägg
#19

Det jag gjorde förut var att lägga det i ett scriptblock längst ner på sidan.

<script>document.form1.pagesrc.value = getFile( "blaj.html" );</script>

Men då blev sidan bara blank.

Medlem sedan dec. 20025 483 inlägg
#20

Använd då mitt förra exempel, det fungerar för mig iallafall.

:)

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