webForumDet fria alternativet

asp post i nytt fönster/popup

ASP

11 svar · 550 visningar · startad av nella

Medlem sedan sep. 200143 inlägg
Frågan#1

Jag vet att jag läst om detta hör tidigare, men beklagar då jag inte kan hitta posten igen o måste fråga.

Jag vill från en länk eller knapp få ut den info som finns i en viss variabel på en popupsida.

jag loopar igenom tabellen och listar ut de första 25 bokstäverna i denna post, men vill att besökaren ska kunna klicka på en länk för att läsa allt innehåll i en liten popup

<%Do Until RecSet.EOF %>

<table>

<tr>
<td> <% =RecSet("aktivitet") %></td>

<td><% =RecSet("datum") %></td>

<td><% =left(RecSet("beskrivning"),25)%></td>

<td><a href="#"> Läs mera </a></td>
<%'här vill jag ha ut RecSet("beskrivning") i en popup%>
</tr>

</table>

<% RecSet.MoveNext
Loop
RecSet.Close %>

Medlem sedan dec. 1999707 inlägg
#2

I en alert-ruta är ju enkelt. Frågan är om det inte är snyggare att lägga det som title-attribut på td-elementet, så att det blir som en tooltip.

<%Do Until RecSet.EOF %>

<table>

<tr>
<td> <% =RecSet("aktivitet") %></td>

<td><% =RecSet("datum") %></td>

<td><% =left(RecSet("beskrivning"),25)%></td>

<td><a href="javascript:alert('<%=RecSet("beskrivning")%>')"> Läs mera </a></td>
</tr>

</table>

<% RecSet.MoveNext
Loop
RecSet.Close %>
<td title="<%=RecSet("beskrivning")%>"><% =left(RecSet("beskrivning"),25)%></td>
Medlem sedan sep. 200143 inlägg
#3

tack

Det med tooltip är en bra ide, men då det kan vara lång text kan det vara svårt att läsa så o jag tänkte att besökaren ska ha en möjlighet att skriva ut den också.

En javascript alert vill inte fungera alls, vet inte om det beror på att jag har för höga säkerhetsinställningar i Explorer. När beskrivningen är lång säger den: The server is refusing to service the request because the Request-URI is too long. bla

Det bästa vore om det gick att få upp den i ett lager eller någon form av popup. Några ideer för det?
Tack på förhand!

Medlem sedan dec. 1999707 inlägg
#4

jag upptäckte att den separerade "javascript:..." i href-attributet på länken, det ska vara som ett ord alltså.

<a href="javascript:alert('<%=RecSet("beskrivning")%>')"> Läs mera </a></td>

Om det inte vill fungera så kan du posta den html som genereras så kan jag titta närmare på det.

Medlem sedan sep. 200143 inlägg
#5

Hej, Jo jag såg sen att det var det som var fel. Men lösningen med javascript alert är inte så vacker direkt.
Jag har iof för mig att man kan ändra ikon på och rubrik, men man kan väl inte få bort den gråa trista färgen eller se till att det blir radbrytning. En lång text utan radbrytning är ju helt omöjlig att visa.

Finns det inget sätt att visa innehållet på en ny sida/popup/lager???

Medlem sedan dec. 1999707 inlägg
#6

Om du vill få det lite snyggare så kan du labba med popup-fönster. Se följande exempel, den senare funktionen fungerar nog bara i IE 5.5+.

<button onclick="ViewDescription('Hej på dig.')" ID="Button1">Pop-up</button>
<button onclick="ViewDescription2('Hej på dig. Hej på dig.')" ID="Button2">Pop-up2</button>
<script>
function ViewDescription(text)
{
	var w =	window.open("", "name", "width=200, height=200, menu=0, titlebar=0, toolbar=0, status=0");
	w.document.body.innerHTML =	text;
}
function ViewDescription2(text)
{
	var w =	window.createPopup();
	w.document.body.style.border =			"1px solid #555555";
	w.document.body.style.backgroundColor =	"#ffffcc";
	w.document.body.style.padding =			"3px";
	w.document.body.style.overflow =		"auto";
	w.document.body.innerHTML =	text;
	w.show(10, 10, 300, 60, event.srcElement);
}
</script>
Medlem sedan dec. 1999707 inlägg
#7

Din kod skulle i sådana fall bli:

...
<td><a href="javascript:ViewDescription2('<%=RecSet("beskrivning")%>')">Läs mer...</a></td>
...

<script type='text/javascript'>
function ViewDescription2(text)
{
	var w =	window.createPopup();
	w.document.body.style.border =			"1px solid #555555";
	w.document.body.style.backgroundColor =	"#ffffcc";
	w.document.body.style.padding =			"3px";
	w.document.body.style.overflow =		"auto";
	w.document.body.innerHTML =	text;
	w.show(10, 10, 300, 60, event.srcElement);
}
</script>
Medlem sedan sep. 200143 inlägg
#8

tack, det fungerar fint men hur kan jag komma i från att all text blir utan radbrytning?

Medlem sedan dec. 1999707 inlägg
#9

Om du syftar på att beskrivningstexten innehåller en massa radbrytningar så ska det här nog fixa det:

<script type='text/javascript'>
function ViewDescription2(text)
{
	var w =	window.createPopup();
	w.document.body.style.border =			"1px solid #555555";
	w.document.body.style.backgroundColor =	"#ffffcc";
	w.document.body.style.padding =			"3px";
	w.document.body.style.overflow =		"auto";
	w.document.body.innerHTML =	text[b].replace("\n", "<br>")[/b];
	w.show(10, 10, 300, 60, event.srcElement);
}
</script>
Medlem sedan sep. 200143 inlägg
#10

Med den koden vill de beskrivningar med radbrytning inte visas alls, men de gjorde de heller inte innan vi bytte in raden w.document.body.innerHTML = text.replace("\n", "<br>");

Det spelar ingen roll, för jag kan inte ha lösningen då de flesta besökare har Safari som webläsare o ibland gamla ver av Explorer.
Därför ville jag så gärna ha en lösning med ett enkelt <a href onclick-visa lager som visas med beskrivningen från databasen innuti. Men jag får väl tänka ut en annan lösning, måste ju kunna skicka med id´t till en ny sida o skriva ut infon där o öppna den sidan som liten popup eller nåt

Medlem sedan feb. 2003549 inlägg
#11

nella skrev:

Safari som webläsare o ibland gamla ver av Explorer.

Safari?? vad är det?

Medlem sedan juni 200032 967 inlägg
282 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
147 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
141 ms — ändringar (db)