Jesper TMedlem sedan nov. 20017 058 inlägg
Har funderingar på att göra en utskriftspopup med följande ko di popupen:
<script>
document.FrontPage_Form1.printForm.value = document.getElementById("SourceCode").innerHTML;
</script>
Och sätta id="SourceCode" på den tabell jag vill skriva ut. Nu till frågan; går det att skicka "SourceCodetabellen" till popupen, och i sådana fall hur?
JojoxxMedlem sedan juni 20004 306 inlägg
Ja, eller så hämtar du datat från popup'en istället med "window.opener.document.osv..." Det kanske är enklare.
Jesper TMedlem sedan nov. 20017 058 inlägg
Jojoxx skrev:
Ja, eller så hämtar du datat från popup'en istället med "window.opener.document.osv..." Det kanske är enklare.
Kan du förklara lite? :r
JojoxxMedlem sedan juni 20004 306 inlägg
Om du har en tabell innesluten i en container (<div>) med id="SourceCode" så kan du hämta den från dokumentet som du laddar i popup-fönstret och lägga den på sidan med;
<script language="JavaScript" type="text/javascript">
document.write(window.opener.document.getElementById("SourceCode").innerHTML);
</script>
Jesper TMedlem sedan nov. 20017 058 inlägg
Går detta att lägga in i en variabel som jag kan bolla med asp?
Typ:(helt fel men ändå)
<script language="JavaScript" type="text/javascript">
strJs=document.write(window.opener.document.getElementById("SourceCode").innerHTML);
</script>
<%
'gör saker i asp
Response write funktioner(strJs)
%>
JojoxxMedlem sedan juni 20004 306 inlägg
Nej, inte direkt. ASP körs som bekant på servern medans Client-side JavaScript körs i webbläsaren. Det som kommer till webbläsaren är alltså html med ev. JavaScript. ASP-koden är då för exekverad och borta från sid-koden ("Visa källa" i webbläsaren).
Sedan kan du mycket väl köra (Server-side) JavaScript i ASP, men där har du inte tillgång till renderad html, alltså DOM/dhtml-funktioner som webbläsaren tillhandahåller.
Det korta svaret är ändå; nej.
Jesper TMedlem sedan nov. 20017 058 inlägg
Även fast jag gör:
Response.write" <script language=""JavaScript"" type=""text/javascript""> "&_
strJs="document.write(window.opener.document.getElementById(""SourceCode"").innerHTML); "&_
"</script>"
@ndersMedlem sedan juni 200026 914 inlägg
Vad är strJs? Det där kan nog inte fungera.
Response.write "<script language=""JavaScript"" type=""text/javascript""> "&_
"document.write(window.opener.document.getElementById(""SourceCode"").innerHTML); "&_
"</script>"
mvh,
Jesper TMedlem sedan nov. 20017 058 inlägg
Tack @nders, men...
Som i inlägget innan, jag skrev :(helt fel men ändå)
det var bara principen. Jag vill köra lite replacer samt att ta bort funktioner i formulär etc innan jag visar det på preeviewsidan. Där av den anledningen. strJs är bara en variabel (som jag tänkte mixtra med).
@ndersMedlem sedan juni 200026 914 inlägg
Eh, inte för att jag förstår någonting, men tänk på detta:
* all asp körs innan någonting skickas till webbläsaren.
* du kan inte med asp göra något med något som finns i webbläsaren.
Lägg ner allt i ett hiddenfält och posta formulär till en asp-sida som förändrar datat är väl vad jag hade gjort.
Fast nu vet jag ju inte om det är det du vill göra, eftersom jag inte förstår någonting. :)
mvh,
Jesper TMedlem sedan nov. 20017 058 inlägg
Men går det inte att göra med runat=server på ngt sätt?
Jag vill hämta allt som finns innanför en tabell, öppna det i en pipup där du kan skriva ut allt sammans. Grejjen är den, att har jag med länkar och formulär etc. så vill jag regexpa bort det i utskriftspipuppen. Det är inte så bra om folk kan klicka, trycka och mixtra på den sidan ju. Det skall bara gå att skriva ut ifrån den. Det kanske går på ngt annat sätt, det går ju att regexpa i js oxo.
@ndersMedlem sedan juni 200026 914 inlägg
Du kan inte med asp komma åt det som finns i besökarens webbläsare. ASP:n är färdig när användaren kan se något i sin läsare.
Jovisst kan du regexpa i JS om du vill det! :)
Mvh,
Jesper TMedlem sedan nov. 20017 058 inlägg
Du kan inte med asp komma åt det som finns i besökarens webbläsare. ASP:n är färdig när användaren kan se något i sin läsare.
Det var därför jag ställde frågan. Men jag var väl otydlig, jag blir lätt det när jag själv vet hur jag vill ha det så att säga. ;)
Tack jag får leta vidare efter regexp patterns för detta.
ChainsawMedlem sedan sep. 20001 282 inlägg
Om du vill att prylar ska försvinna eller läggas till vid utskrift så kan du lösa det med CSS. Med hjälp av en "@media print" så kan du ställa in vilka egenskaper som gäller vid just utskrifter.
Jesper TMedlem sedan nov. 20017 058 inlägg
Tack, skall leta lite ang. det!
Jesper TMedlem sedan nov. 20017 058 inlägg
Men går det att css:a bort det då? Jag har sökt här och på google osv. men det verkar vara svårt att hitta ngn vettig förklaring till @media print. Jag vill ju också visa tex en länk och ett formulär men det skall inte gå att klicka/skicka osv.
JojoxxMedlem sedan juni 20004 306 inlägg
Exempel;
<style type="text/css">
@media print {
.onlyOnScreen { display:none; }
}
</style>
<div class="onlyOnScreen">Detta syns bara på skärm, inte vid utskrift.</div>
Detta syns både på skärm och vid utskrift.
W3C
Jesper TMedlem sedan nov. 20017 058 inlägg
Jag löste allt med Javascript så här(inte perfekt men ändå):
<script language="JavaScript" type="text/javascript">
strJs=(window.opener.document.getElementById(""SourceCode"").innerHTML);
document.write(strJs.replace("".asp"", "".xxxx""))
</script>