Avatar billede sorenmt84 Juniormester
02. august 2001 - 21:28 Der er 9 kommentarer og
1 løsning

Find en fejl

Dette script er noget jeg skal bruge til en guide til at indsætte links på en side.

I filen test.asp, kan man indtaste hvad man nu vil i et textarea, så kan man trykke på \"link\" så åbner den test2.asp hvor man indaster hvilket target linket skal åbne i, samt url og linktekst. Så går man til test2.asp?side=vis Der kan man se et eksempel på hvordan det vil se ud, samt man kan trykke \"indsæt. Det aktivere et javascript, som burde indsætte det link man lige har lavet i textareaet i test.asp - Uden at slette det der står i forvejen, men det virker ikke... Hjælp mig!!!!

---------test.asp---------------
<script language=\"JavaScript\">
<!-- Gem koden for gamle browsere
function vindue(url,h,w) { var ww = 480, wh = 340, leftPos = null, topPos = null;

IE=(document.all)?true:false;
var wh = (IE)?document.body.clientHeight : window.innerHeight;
var ww = (IE)?document.body.clientWidth : window.innerWidth;

if (top.screen){
  if (screen.width){
    leftPos = Math.round((ww-w-10)/2);
    topPos = Math.round((wh-h-29)/2);
  } else {
    leftPos = 50
    topPos = 50
  }
}

popupWin = window.open(url, \'redigerbillede\', \'height=\' + h + \',width=\' + w + \',top=\' + topPos + \',left=\' + leftPos + \'\')
}
// -->
</script>
<% Response.Buffer = True %>
<html>
<body>
<table BORDER=\"0\" width=\"600\" align=\"center\">
<tr><td BGCOLOR=\"#D4D0C8\">
<form ACTION=\"show.asp\" METHOD=\"POST\" NAME=\"links\">
<a href=\"java script:doBold();\"><img border=\"0\" src=\"bold.gif\"></a>&nbsp;<img border=\"0\" src=\"test.gif\"></a>
&nbsp;<a href=\"java script:docenter();\">Center</a>&nbsp;<a href=\"java script:dounderline();\">Understreget</a>&nbsp;<a href=\"java script:vindue(\'test2.asp\',600,600)\">Link</a></td></tr>
<tr><td>
<textarea cols=\"75\" rows=\"25\" name=\"tekst\" style=\"font-family: verdana;\">sadsad</textarea>
<input type=\"submit\" name=\"send\" value=\"Vis Eksempel\"> </form></td></tr></table>
</html>


--------------test2.asp-----------------
<% side = request(\"side\") %>

<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\">
<HTML>
<HEAD>
    <TITLE>[Ingen titel]</TITLE>
<META NAME=\"Generator\" CONTENT=\"Stone\'s WebWriter 3.5\">
<script language=\"JavaScript\">
<!--
function links(link) {
    opener.document.links.tekst.value = opener.document.links.tekst.value + showlink
    opener.document.links.tekst.focus()
    window.close()
}
-->
    </script>
</HEAD>
<BODY>
<% if side = \"\" Then %>
<FORM ACTION=\"test2.asp?side=vis\" METHOD=\"POST\" NAME=\"makelinks\">
Target: <select size=\"1\" name=\"target\">
    <option value=\"self\">Samme vindue</option>
    <option value=\"_blank\">Nyt vindue</option>
  </select><br>
Url: <INPUT TYPE=\"text\" NAME=\"url\"><br>
Tekst: <INPUT TYPE=\"text\" NAME=\"tekst\"><br>
<input type=\"submit\" value=\"Lav link\" name=\"links\">
</FORM>
<% end if %>

<% if side = \"vis\" Then %>
Det vil se sådan ud:<br>
<a class=\"normal\" href=\"<%=request(\"url\")%>\" target=\"<%=request(\"target\")%>\"><%=request(\"tekst\")%></a><br>

<FORM NAME=\"showlink\" onclick=\"java script:links(link);\">
<textarea style=\"display:none\"><a class=\"normal\" href=\"<%=request(\"url\")%>\" target=\"<%=request(\"target\")%>\"><%=request(\"tekst\")%></a></textarea>
<input type=\"submit\" name=\"send\" value=\"Indsæt\">
</form>
<% end if %>

</BODY>
</HTML>
Avatar billede sorenmt84 Juniormester
02. august 2001 - 21:29 #1
Det behøves ikke været skruet sådan sammen, så har du en bedre løsning, eller en der virker, så kom endelig med det!
Avatar billede jakoba Nybegynder
02. august 2001 - 21:47 #2
rettelser i
første linie i funktionen links:

function links(link) {
    opener.document.links.tekst.value = opener.document.links.tekst.value + link.value
    opener.document.links.tekst.focus()
    window.close()
}

parameter der du kalder links
navn i dit textarea.

<FORM NAME=\"showlink\" onclick=\"java script:links(this.txarea);\">
<textarea name=\'txarea\' style=\"display:none\"><a class=\"normal\" href=\"<%=request(\"url\")%>\" target=\"<%=request(\"target\")%>\"><%=request(\"tekst\")%></a></textarea>

de 3 rettelser skulle være nok.

mvh JakobA
Avatar billede jakoba Nybegynder
02. august 2001 - 21:51 #3
men jeg er lidt loren ved den onclick i din <form kommando. Det kan godt være det virker i IE, men din onclick bør altså ligge i knappen i den form (med en lidt ændret farameter):

<input type=\"submit\" name=\"send\" value=\"Indsæt\" onclick=\"java script:links(this.form.txarea);\">

Avatar billede sorenmt84 Juniormester
02. august 2001 - 22:09 #4
Det virker stadivæk ikke!

Jeg fik vist ikke skrevet hvad det var der sketet, men det kan jeg så gøre nu:
Indlæser den test2.asp i popup vinduet
Avatar billede sorenmt84 Juniormester
02. august 2001 - 22:13 #5
Jeg er ikke så god til javascript, så jeg ville lige hører om det neden under er noget jeg skal rette, eller om det er en kommentar:

\"parameter der du kalder links
navn i dit textarea.\"
Avatar billede jakoba Nybegynder
02. august 2001 - 22:15 #6
nej, det er blot beskrivelser der skulle lede dig hen til de steder der skal rettes noget. en linie for hver linie der skal rettes noget i.

Hvordan ser din kode ud nu?
Avatar billede sorenmt84 Juniormester
02. august 2001 - 22:20 #7
------------test2.asp-----------

<% side = request(\"side\") %>

<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\">
<HTML>
<HEAD>
    <TITLE>[Ingen titel]</TITLE>
<META NAME=\"Generator\" CONTENT=\"Stone\'s WebWriter 3.5\">
<script language=\"JavaScript\">
<!--
function links(link) {
    opener.document.links.tekst.value = opener.document.links.tekst.value + link.value
    opener.document.links.tekst.focus()
    window.close()
}
-->
    </script>
</HEAD>
<BODY>
<% if side = \"\" Then %>
<FORM ACTION=\"test2.asp?side=vis\" METHOD=\"POST\" NAME=\"makelinks\">
Target: <select size=\"1\" name=\"target\">
    <option value=\"self\">Samme vindue</option>
    <option value=\"_blank\">Nyt vindue</option>
  </select><br>
Url: <INPUT TYPE=\"text\" NAME=\"url\"><br>
Tekst: <INPUT TYPE=\"text\" NAME=\"tekst\"><br>
<input type=\"submit\" value=\"Lav link\" name=\"links\">
</FORM>
<% end if %>

<% if side = \"vis\" Then %>
Det vil se sådan ud:<br>
<a class=\"normal\" href=\"<%=request(\"url\")%>\" target=\"<%=request(\"target\")%>\"><%=request(\"tekst\")%></a><br>

<FORM NAME=\"showlink\">
<textarea name=\'txarea\' style=\"display:none\"><a class=\"normal\" href=\"<%=request(\"url\")%>\" target=\"<%=request(\"target\")%>\"><%=request(\"tekst\")%></a></textarea>
<input type=\"submit\" name=\"send\" value=\"Indsæt\" onclick=\"java script:links(this.form.txarea);\">
</form>
<% end if %>

</BODY>
</HTML>
Avatar billede jakoba Nybegynder
02. august 2001 - 22:31 #8
hør lige et øjeblik.
i filen  test.asp har du givet din form navnet \"links\"
<form ACTION=\"show.asp\" METHOD=\"POST\" NAME=\"links\">
men det navn bliver brugt som standardnavn i ethevt dokument (et array hvor alle links i dokumentet er listet). Så kald din form noget andet:
<form ACTION=\"show.asp\" METHOD=\"POST\" NAME=\"minelinks\">

og så laver vi om i funktionen links i test2.asp igen:

function links(link) {
    opener.document.minelinks.tekst.value = opener.document.minelinks.tekst.value + link.value
    opener.document.minelinks.tekst.focus()
    window.close()

Det gør ikke noget at funktionen bliver ved med at hedde links. den er placeret udenfor document.

mvh JakobA
Avatar billede sorenmt84 Juniormester
03. august 2001 - 08:58 #9
Det virker stadigvæk ikke!!!

Der sker det samme som før
Avatar billede sorenmt84 Juniormester
02. september 2001 - 01:27 #10
Jeg lukker lige dette spørgsmål!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester