Avatar billede ingenting Nybegynder
19. august 2001 - 21:50 Der er 23 kommentarer og
1 løsning

Tryk på button = indsættelse af url

Jeg har et vbulletin forum, hvor jeg mangler en feature.

Jeg ønsker en button, som ved tryk automatisk indsætter en forudifineret (af mig) url. Kan det lade sig gøre!! Når man trykker på denne button, så bliver url automatisk smidt ind i message formen, som jeg tror hedder (this.form) efter hvad jeg kan se mig ud af fra kilden!!

Håber nogle kan hjælpe mig!!
Avatar billede jakoba Nybegynder
19. august 2001 - 21:54 #1
this.form er ikke nok. det peger blot på hele din formular.
Det felt du vil have urlen lagt ind i skal have et navn (fx  name=\'urlfelt\' )

når det er der kan du lægge en onclick event i din knap:

<input type=\'button\' value=\'indsæt URL\'
    onclick=\"this.form.urlfelt.value=\'http://domæne.dk/filnavn.html\';\">

mvh JakobA
Avatar billede jakoba Nybegynder
19. august 2001 - 21:57 #2
Hvis din url blot skal tilføjes til det der står i forvejen kan du evt skrive:

<input type=\'button\' value=\'indsæt URL\'
    onclick=\"this.form.urlfelt.value+=\' http://domæne.dk/filnavn.html \';\">

istedetfor.
Avatar billede ingenting Nybegynder
19. august 2001 - 22:00 #3
Man tak jakoba. Jeg finder lige ud af hvad feltet hedder og afprøver koden, så kommer jeg tilbage og giver point!! Måske bliver det først i morgen!!
Avatar billede ingenting Nybegynder
19. august 2001 - 22:03 #4
OK, feltet hedder \"message\" hvordan lægger jeg så det ind?
Avatar billede ingenting Nybegynder
19. august 2001 - 22:15 #5
Det var ikke sådan jeg ville have det!!

Når folk trykker på denne button, så springer der et lille vindue op, hvor man kan trykke en url ind, hvorefter man trykker på en submit knap og dette vindue lukker!!

Derefter blive mit forudifineret link sat sat foran det link som man lige har skrevet ind i vindue og sat ind i \"message\" feltet?

Avatar billede Slettet bruger
20. august 2001 - 08:33 #6
Jeg vil nu sige, at din beskrivelse er ligevel kryptisk, men jeg tror jeg har, hvad du søger:
<html>
<head>
<script>
<!--
function skrivLink(){
ditLink = \"http://www.ditlink.dk\"
brugerLink = prompt(\"Skriv venligst et link:\", \"Dit link\")
document.forms[\"minForm\"].message.value = ditLink + \" \" + brugerLink
}
//-->
</script>
</head>
<body>
<form name=\"minForm\">
<input type=\"button\" onClick=\"skrivLink()\" value=\"Skriv et link\">
<br><input type=\"text\" value=\"\" name=\"message\">
</form>
</body>
</html>

Dette gør sådan, at der popper en prompt op, der spørger om et link, og sætter det så ind i et tekstfelt BAGVED et link, som du har defineret.
Hvis du har spørgsmål, så er jeg her!
Avatar billede ingenting Nybegynder
20. august 2001 - 11:35 #7
phoenixv: Jeg tester lige dit eksempel i løbet af dagen og vender så tilbage.
Avatar billede Slettet bruger
20. august 2001 - 14:10 #8
I input boxen kommer der til at stå:
http://www.ditlink.dk http://www.brugerenslink.dk
Avatar billede Slettet bruger
20. august 2001 - 14:11 #9
(Men det kan sagtens ændres)
Avatar billede ingenting Nybegynder
20. august 2001 - 14:51 #10
phoenixv: Kan det ikke ændres, så det hele bliver slået sammen til et stort link fx.
http://www.ditlink.dkhttp://www.brugerenslink.dk ?
Avatar billede ingenting Nybegynder
20. august 2001 - 15:53 #11
Jeg har prøvat at smide koden ind i mit forum, men det virker ikke helt!!

Jeg skal have hele linket smidt ind i det \"message\" felt som jeg allerede har oprettet, så der skal ikke oprettes et nyt!

Men så snart jeg trykker på button, så kommer der en fejl.
Avatar billede ingenting Nybegynder
20. august 2001 - 15:59 #12
OK, nu er jeg nået så langt at jeg kan få prompten op og skrive en url i den, men jeg kan når jeg trykker ok, så kommer følgende fejl:

\'document.forms.minForm.message\' er ikke et object
Avatar billede Slettet bruger
20. august 2001 - 21:30 #13
OK, så er det fordi, at din form ikke hedder \"minForm\". I dit <form>-tag skal du skriv name=\"minForm\" og dit <input type=\"text\"> skal hedde name=\"message\" .
Hvis du vil have skrevet linket sammen til ét stort link, skal du scriptet se sådan ud:
<script>
<!--
function skrivLink(){
ditLink = \"http://www.ditlink.dk\"
brugerLink = prompt(\"Skriv venligst et link:\", \"Dit link\")
document.forms[\"minForm\"].message.value = ditLink + brugerLink
}
//-->
</script>
Avatar billede Slettet bruger
21. august 2001 - 15:21 #14
Du kan eventuelt også bare give mig hele din kode, så retter jeg scriptet til for dig!
Avatar billede ingenting Nybegynder
21. august 2001 - 15:29 #15
Øjeblik, så finder jeg lige al koden!!
Avatar billede ingenting Nybegynder
21. august 2001 - 15:38 #16
Her har du al koden, du kan bare smide knappen ind ved under er andre, så kan jeg altid selv tilpasse den!!

{htmldoctype}
<html>
<head>
<title>$bbtitle - Post New Thread</title>
$headinclude
<!--<script type=\"text/javascript\" language=\"javascript\" src=\"$bburl/spellcheck/spch.js\"></script>-->
<script language=\"javascript\">
<!--
var postmaxchars = $postmaxchars;
function validate(theform) {
    if (theform.message.value==\"\" || theform.subject.value==\"\") {
        alert(\"Please complete the subject and message fields.\");
        return false; }
    if (postmaxchars != 0) {
        if (theform.message.value.length > $postmaxchars) {
            alert(\"Your message is too long.\\n\\nReduce your message to $postmaxchars characters.\\nIt is currently \"+theform.message.value.length+\" characters long.\");
            return false; }
        else { return true; }
    } else { return true; }
}
function checklength(theform) {
    if (postmaxchars != 0) { message = \"\\nThe maximum permitted length is $postmaxchars characters.\"; }
    else { message = \"\"; }
    alert(\"Your message is \"+theform.message.value.length+\" characters long.\"+message);
}
//-->
</script>
</head>
<body>
$header

<!-- breadcrumb -->
<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\" width=\"{contenttablewidth}\" {tableinvisibleextra} align=\"center\">
<tr>
    <td width=\"100%\">$navbar</td>
</tr>
</table>
<!-- /breadcrumb -->

$postpreview

<br>

<form enctype=\"multipart/form-data\" action=\"newthread.php\" method=\"POST\" name=\"vbform\" onSubmit=\"return validate(this)\">
<input type=\"hidden\" name=\"s\" value=\"$session[sessionhash]\">
<input type=\"hidden\" name=\"forumid\" value=\"$forumid\">
<input type=\"hidden\" name=\"action\" value=\"postthread\">

<table cellpadding=\"{tableouterborderwidth}\" cellspacing=\"0\" border=\"0\" bgcolor=\"{tablebordercolor}\" {tableouterextra} width=\"{contenttablewidth}\" align=\"center\"><tr><td>
<table cellpadding=\"4\" cellspacing=\"{tableinnerborderwidth}\" border=\"0\" {tableinnerextra} width=\"100%\">
<tr>
    <td bgcolor=\"{tableheadbgcolor}\" colspan=\"2\"><normalfont color=\"{tableheadtextcolor}\" class=\"thtcolor\"><b>Post New Thread</b></normalfont></td>
</tr>
$logincode
<tr bgcolor=\"{secondaltcolor}\">
    <td bgcolor=\"{secondaltcolor}\"><normalfont><b>Subject:</b></normalfont></td>
    <td bgcolor=\"{secondaltcolor}\"><normalfont><input type=\"text\" class=\"bginput\" name=\"subject\" value=\"$subject\" size=\"40\" maxlength=\"85\" tabindex=\"1\"></normalfont></td>
</tr>
$posticons
$vbcode_buttons
<tr>
    <td bgcolor=\"{secondaltcolor}\" valign=\"top\" nowrap><normalfont><b>Message:</b></normalfont>
        <p><smallfont>
        See Forum Rules (below) for<br>
        more information about what<br>
        codes you are allowed to use<br>
        in your posts.
    </smallfont></p>
    $vbcode_smilies</td>
    <td bgcolor=\"{secondaltcolor}\">
        <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">
        <tr valign=\"top\">
            <td><textarea name=\"message\" rows=\"20\" cols=\"$textareacols\" wrap=\"virtual\" tabindex=\"2\">$message</textarea><br>
            <smallfont><a href=\"java script:checklength(document.vbform);\">[check message length]</a></smallfont></td>
        </tr>
        </table>
    </td>
</tr>
<tr>
    <td bgcolor=\"{firstaltcolor}\" valign=\"top\"><normalfont><b>Options:</b></normalfont></td>
    <td bgcolor=\"{firstaltcolor}\" valign=\"top\"><smallfont>
        <input type=\"checkbox\" name=\"parseurl\" value=\"yes\" $parseurlchecked> <b>Automatically parse URLs:</b> automatically adds [url] and [/url] around internet addresses.
        <br><input type=\"checkbox\" name=\"email\" value=\"yes\" $emailchecked> <b>Email Notification:</b> emails sent to you whenever someone replies. Only registered users are eligible.
        $disablesmiliesoption
        <br><input type=\"checkbox\" name=\"signature\" value=\"yes\" $signaturechecked> <b>Show Signature:</b> include your profile signature.  Only registered users may have signatures.
    </smallfont></td>
</tr>
$attachmentoption
$postpolloption
</table>
</td></tr></table>

<br>

<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\" width=\"{contenttablewidth}\" {tableinvisibleextra} align=\"center\">
<tr>
    <td align=\"center\"><normalfont>
    <input type=\"submit\" class=\"bginput\" name=\"submit\" value=\"Submit New Thread\" accesskey=\"s\" tabindex=\"3\">
    <input type=\"submit\" class=\"bginput\" name=\"preview\" value=\"Preview Post\" accesskey=\"p\" tabindex=\"4\">
    <!--<input type=\"button\" class=\"bginput\" value=\"Spell Check\" onclick=\"var f=document.forms[\'vbform\']; doSpell( \'$spellchecklang\', f.message, \'$bburl/spellcheck/sproxy.php\', true);\" tabindex=\"5\">-->
    </normalfont></td>
</tr>
</table>

</form>

<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\" width=\"{contenttablewidth}\" {tableinvisibleextra} align=\"center\">
<tr>
    <td><smallfont><b>Forum Rules:</b><br>$forumrules</smallfont></td>
</tr>
</table>

$footer

</body>
</html>
Avatar billede Slettet bruger
21. august 2001 - 15:50 #17
Ok, her kommer hele herligheden:

{htmldoctype}
<html>
<head>
<title>$bbtitle - Post New Thread</title>
$headinclude
<!--<script type=\"text/javascript\" language=\"javascript\" src=\"$bburl/spellcheck/spch.js\"></script>-->
<script language=\"javascript\">
<!--
var postmaxchars = $postmaxchars;
function validate(theform) {
    if (theform.message.value==\"\" || theform.subject.value==\"\") {
        alert(\"Please complete the subject and message fields.\");
        return false; }
    if (postmaxchars != 0) {
        if (theform.message.value.length > $postmaxchars) {
            alert(\"Your message is too long.\\n\\nReduce your message to $postmaxchars characters.\\nIt is currently \"+theform.message.value.length+\" characters long.\");
            return false; }
        else { return true; }
    } else { return true; }
}
function checklength(theform) {
    if (postmaxchars != 0) { message = \"\\nThe maximum permitted length is $postmaxchars characters.\"; }
    else { message = \"\"; }
    alert(\"Your message is \"+theform.message.value.length+\" characters long.\"+message);
}
//-->
</script>
<script>
<!--
function skrivLink(){
ditLink = \"http://www.ditlink.dk\"
brugerLink = prompt(\"Skriv venligst et link:\", \"Dit link\")
document.forms[\"vbform\"].message.value = ditLink + brugerLink
}
//-->
</script>
</head>
<body>
$header

<!-- breadcrumb -->
<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\" width=\"{contenttablewidth}\" {tableinvisibleextra} align=\"center\">
<tr>
    <td width=\"100%\">$navbar</td>
</tr>
</table>
<!-- /breadcrumb -->

$postpreview

<br>

<form enctype=\"multipart/form-data\" action=\"newthread.php\" method=\"POST\" name=\"vbform\" onSubmit=\"return validate(this)\">
<input type=\"hidden\" name=\"s\" value=\"$session[sessionhash]\">
<input type=\"hidden\" name=\"forumid\" value=\"$forumid\">
<input type=\"hidden\" name=\"action\" value=\"postthread\">

<table cellpadding=\"{tableouterborderwidth}\" cellspacing=\"0\" border=\"0\" bgcolor=\"{tablebordercolor}\" {tableouterextra} width=\"{contenttablewidth}\" align=\"center\"><tr><td>
<table cellpadding=\"4\" cellspacing=\"{tableinnerborderwidth}\" border=\"0\" {tableinnerextra} width=\"100%\">
<tr>
    <td bgcolor=\"{tableheadbgcolor}\" colspan=\"2\"><normalfont color=\"{tableheadtextcolor}\" class=\"thtcolor\"><b>Post New Thread</b></normalfont></td>
</tr>
$logincode
<tr bgcolor=\"{secondaltcolor}\">
    <td bgcolor=\"{secondaltcolor}\"><normalfont><b>Subject:</b></normalfont></td>
    <td bgcolor=\"{secondaltcolor}\"><normalfont><input type=\"text\" class=\"bginput\" name=\"subject\" value=\"$subject\" size=\"40\" maxlength=\"85\" tabindex=\"1\"></normalfont></td>
</tr>
$posticons
$vbcode_buttons
<tr>
    <td bgcolor=\"{secondaltcolor}\" valign=\"top\" nowrap><normalfont><b>Message:</b></normalfont>
        <p><smallfont>
        See Forum Rules (below) for<br>
        more information about what<br>
        codes you are allowed to use<br>
        in your posts.
    </smallfont></p>
    $vbcode_smilies</td>
    <td bgcolor=\"{secondaltcolor}\">
        <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">
        <tr valign=\"top\">
            <td><textarea name=\"message\" rows=\"20\" cols=\"$textareacols\" wrap=\"virtual\" tabindex=\"2\">$message</textarea><br>
<input type=\"button\" value=\"Skriv et link!\" onClick=\"skrivLink()\"><br>
            <smallfont><a href=\"java script:checklength(document.vbform);\">[check message length]</a></smallfont></td>
        </tr>
        </table>
    </td>
</tr>
<tr>
    <td bgcolor=\"{firstaltcolor}\" valign=\"top\"><normalfont><b>Options:</b></normalfont></td>
    <td bgcolor=\"{firstaltcolor}\" valign=\"top\"><smallfont>
        <input type=\"checkbox\" name=\"parseurl\" value=\"yes\" $parseurlchecked> <b>Automatically parse URLs:</b> automatically adds [url] and [/url] around internet addresses.
        <br><input type=\"checkbox\" name=\"email\" value=\"yes\" $emailchecked> <b>Email Notification:</b> emails sent to you whenever someone replies. Only registered users are eligible.
        $disablesmiliesoption
        <br><input type=\"checkbox\" name=\"signature\" value=\"yes\" $signaturechecked> <b>Show Signature:</b> include your profile signature.  Only registered users may have signatures.
    </smallfont></td>
</tr>
$attachmentoption
$postpolloption
</table>
</td></tr></table>

<br>

<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\" width=\"{contenttablewidth}\" {tableinvisibleextra} align=\"center\">
<tr>
    <td align=\"center\"><normalfont>
    <input type=\"submit\" class=\"bginput\" name=\"submit\" value=\"Submit New Thread\" accesskey=\"s\" tabindex=\"3\">
    <input type=\"submit\" class=\"bginput\" name=\"preview\" value=\"Preview Post\" accesskey=\"p\" tabindex=\"4\">
    <!--<input type=\"button\" class=\"bginput\" value=\"Spell Check\" onclick=\"var f=document.forms[\'vbform\']; doSpell( \'$spellchecklang\', f.message, \'$bburl/spellcheck/sproxy.php\', true);\" tabindex=\"5\">-->
    </normalfont></td>
</tr>
</table>

</form>

<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\" width=\"{contenttablewidth}\" {tableinvisibleextra} align=\"center\">
<tr>
    <td><smallfont><b>Forum Rules:</b><br>$forumrules</smallfont></td>
</tr>
</table>

$footer

</body>
</html>

Nu kommer knappen til at stå lige nedenunder textarea\'et!
Avatar billede ingenting Nybegynder
21. august 2001 - 16:59 #18
Phoenixv: Jeg tester det lige senere på min offline server, det bliver enten i aften eller i morgen eftermiddag, hvorefter jeg kommer tilbage og giver point til dig!!

Tak.
Avatar billede ingenting Nybegynder
21. august 2001 - 18:55 #19
Phoenixv: Det virker fint, dog er der en meget stor ulempe!!

Hvis jeg har skrevet en masse tekst i \"message\" feltet, og derefter ønsker at smide \"mit link\" ind via button, så komme mit link også fint ind, men det sletter altså bare alt andet der står i forvejen i \"message\" feltet?
Avatar billede Slettet bruger
21. august 2001 - 22:01 #20
OK, så ser scriptet sådan her ud:
<script>
<!--
function skrivLink(){
ditLink = \"http://www.ditlink.dk\"
brugerLink = prompt(\"Skriv venligst et link:\", \"Dit link\")
forValue = document.forms[\"vbform\"].message.value
document.forms[\"vbform\"].message.value = forValue + ditLink + brugerLink
}
//-->
</script>
Så kommer det til at se sådan her ud:
Før-indtastet-datahttp://www.ditlink.dkhttp://www.brugerenslink.dk
Avatar billede Slettet bruger
23. august 2001 - 18:59 #21
Hallo?
Det kan sagtens ændres, hvis det er dér, skoen trykker... 8-)
Avatar billede ingenting Nybegynder
23. august 2001 - 20:39 #22
phoenixv: Jeg har ikke glemt dig bare rolig!! Jeg har bare en masse ting iøjeblikket, så jeg ikke har haft tid til at teste det!!

I vbulletin, skal der være [http]http://www.domain.com[/http] uden om, for at det bliver lavet til et klikbart link, hvordan klares dette?
Avatar billede Slettet bruger
24. august 2001 - 08:58 #23
Jeg er ikke helt klar over, hvad du mener, men dette er mit bedste bud:
<script>
<!--
function skrivLink(){
ditLink = \"http://www.ditlink.dk\"
brugerLink = prompt(\"Skriv venligst et link:\", \"Dit link\")
forValue = document.forms[\"vbform\"].message.value
document.forms[\"vbform\"].message.value = forValue + \"[http]\" + ditLink + brugerLink + \"[/http]\"
}
//-->
</script>

Så kommer det til at se sådan her ud:
[http]http://www.dit-link.dkhttp://www.brugerens-link.dk[/http]
Hvis du ikke vil have \"http://www.dit-link.dk\", skal du bare slette dette i koden:
\"+ ditLink\"
Avatar billede ingenting Nybegynder
24. august 2001 - 10:44 #24
Phoenixv: Mange tak for din hjælp, her er det velfortjente point.
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