Alternative zu alert
Vonni
- javascript
0 Dieter Raber0 Avalon0 Vonni
0 Sebastian Becker0 mipu
Hallo,
ich möchte nach einer Berechnung einiger Werte diese in einem neuen Fenster anzeigen lassen.
Der eigentliche Quelltext sieht wie folgt aus:
alert("Ergebnis der Messung\n"+"\n"+"Fläche: "+gesamt+" m²"+"\n"+"Umfang: "+Math.round(gess)+" m"+"\n"+"Länge: "+Math.round(umf)+" m");
Welche Möglichkeiten gibt es das alert zu ersetzen und die Daten zu präsentieren?
MfG. Vonni
Hallo Vonni,
Javascript kann diesbezueglich nur alert();
Eine Alternative waere, ein neues Fenster zu oeffnen und da die Daten mit document.open(), document.write() und document.close() reinzuschreiben.
Gruß,
Dieter
Welche Möglichkeiten gibt es das alert zu ersetzen und die Daten zu präsentieren?
Was schwebt Dir denn vor? Möglichkeiten gibt es wie Sand am Meer!
Gruß
Avalon
Fenster öffnen und dann dort reinschreiben... war auch mein Gedanke.
Muß ich bei der Wertübergabe etwas beachten???
MfG. Vonni
Hallo, Vonni,
ich möchte nach einer Berechnung einiger Werte diese in einem neuen Fenster anzeigen lassen.
Welche Möglichkeiten gibt es das alert zu ersetzen und die Daten zu präsentieren?
ich hab' mir mal ein Skript für ein Debug-Fenster gebastelt (s.u.). Diese Skript könntest Du für Deine Zwecke adaptieren.
Der Aufruf erfolgt dann einfach mit "debug" statt "alert" ...
debug("Ergebnis der Messung\n"+"\n"+"Fläche: "+gesamt+" m²"+"\n"+"Umfang: "+Math.round(gess)+" m"+"\n"+"Länge: "+Math.round(umf)+" m");
Grüße,
Sebastian
/* **********************************************************************
Filename: debug.js
Description: debug window
Author: © 2004 Sebastian Becker (sebastian.becker@berlin.de)
********************************************************************** */
function maskTags(str)
{
strTemp = "";
for(i=0;i<str.length;i++)
{
strTemp += (str.charAt(i)=='<')?'<':(str.charAt(i)=='>')?'>':(str.charAt(i)=='"')?'"':str.charAt(i);
}
return strTemp;
}
function maskSingleQuotes(str)
{
strTemp = "";
for(i=0;i<str.length;i++)
{
strTemp += (str.charAt(i)=="'")?""":str.charAt(i);
}
return strTemp;
}
function debug(value)
{
// extract filename
x = URI.length;
while((URI.substring(x,x-1))!="/")x--;
filename = URI.substring(URI.length,x);
if(!value)
{
value="empty debug value";
}
else
{
value = maskTags(value);
value = maskSingleQuotes(value);
value = "\n<blockquote>\n<pre>\n" + value + "\n</pre>\n</blockquote>\n";
}
debug_title = 'Debug: ' + filename;
var html = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">\n';
html += '<html>\n';
html+='<head>\n';
html+='<title>' + debug_title + '</title>\n';
html+='<style type="text/css">\n';
html+='body,td{\n';
html+='overflow: auto;\n';
html+='vertical-align: top;\n';
html+='font-family: Verdana, Arial, sans-serif;\n';
html+='font-size: 8pt;\n';
html+='color: #333333;\n';
html+='}\n';
html+='div#debug {\n';
html+='border: 1px inset activeborder;\n';
html+='overflow: auto;\n';
html+='height: 100%;\n';
html+='}\n';
html+='th {\n';
html+='color: #FFFFFF;\n';
html+='background-color: activecaption;\n';
html+='}\n';
html+='</style>\n';
html+='<s'+'cript>\n';
html+='var w = window.screen.availWidth/2, h = window.screen.availHeight/2;\n';
html+='window.resizeTo(w,h);\n';
html+='window.moveTo((window.screen.availWidth-w)/15,(window.screen.availHeight-h)/10);\n';
html+='</sc'+'ript>\n';
html+='</head>\n\n';
html+='<body leftmargin="0" marginwidth="0" topmargin="5" marginheight="5" bgcolor="buttonface" link="#FFFFFF" vlink="#FFFFFF">\n';
html+='<table width="100%" height="100%" cellspacing="1" cellpadding="1" align="center">\n';
html+='<tr>\n<td valign="top" width="100%" height="100%" bgcolor="#FFFFFF">\n';
html+='<div id="debug">\n<br>\n';
html+= value + '\n';
html+='</div>\n';
html+='</td>\n</tr>\n';
html+='<tr valign="bottom">\n<td align="right">\n';
html+='<a hidefocus href="javascript:window.close()">close</a>\n';
html+='</td>\n</tr>\n';
html+='</table>\n';
html+='</body>\n';
html+='</html>\n';
debugwin = window.open('','debug','top=0,left=0,width=1,height=1,resizable=yes,status=no,menubar=no,toolbar=no,location=no');
debugwin.document.open();
debugwin.document.write(html);
debugwin.document.close();
debugwin.focus();
}
Moin,
du könntest ein Formularfeld zur Ausgabe mißbrauchen, oder einen iframe oder div per innerhtml ansprechen, oder wie bereits vorgeschlagen in einem neuen Fenster ausgeben.
gruß mipu