[JS] Copy naar clipboard bij submit

Pagina: 1
Acties:

  • r0b
  • Registratie: December 2002
  • Laatst online: 13-05 11:07
Ik probeer een PHP tooltje aan de gang te krijgen, waarbij een user een aantal gegevens invult in het hiervoor bestemde form, en dit daarna kan submitten.

Hierbij hoort de output direct op het scherm te verschijnen.
Voorzover geen problemen.

Echter, nu wil ik graag dat de output die deze persoon op zijn scherm krijgt, al dan niet via een tweede submit button dit ook in zijn clipboard kan krijgen.

Momenteel heb ik het volgende:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
       <title>Form test</title>
       
</head>
<body>
<form name="form" method="POST" action="form.php">
Naam:
  <input type="text" name="naam">
  
   INT/EXT:
  <select size="1" name="intext">
    <option selected>---</option>
    <option>Intern</option>
    <option>Extern</option>
    </select>
  Afdeling
  <select size="1" name="afdeling">
    <option selected>-------------------</option>
    <option>test 1</option>
    <option>test 2</option>
    <option>test 3</option>
    <option>test 4</option>
    </select><input type="submit" name="Submit" value="Submit">
  </form>


<?php

$dash = "-";
$space = " ";
echo "[";
print $intext;
echo " : ";
print $naam;
echo $space;
echo "(";
print $afdeling;
echo ")";
echo $space;
print date("j");
echo $dash;
print date("m");
echo $dash;
print date("Y");
echo " , ";
print date("H")+9;
echo " : ";
print date("i");
echo " ]";
?>

</body>
</html>


De output lijkt dan hier op:
[INT : Albert Heijn (test 2) 22-01-2005 , 12 : 30 ]
Ik heb inmiddels wel een aantal onmouseover-select scripts gevonden, waarmee ik dit wellicht kunnen oplossen.

Echter, deze werken alleen in een textarea, en het probleem is hier juist dat alles eerst gesubmit wordt, daarna pas de daadwerkelijke output verschijnt, en juist die laatste output wil ik in het clipboard hebben.

Ik heb in de search weinig kunnen terugvinden over dit probleem, dus als iemand me even een zetje in de goeie richting kan geven ... graag. :)

offtopic:
Geen commentaar op mijn uber-leet PHP sk1lls graag. Het werkt, dat is genoeg. :+

[ Voor 16% gewijzigd door r0b op 22-01-2005 03:34 ]


  • r0b
  • Registratie: December 2002
  • Laatst online: 13-05 11:07
..... ik haat GoT.

[rml]Prammenhanger in "[ Javascript] Naar clipboard kopiëren, pr..."[/rml]

Ik heb me een uur suf lopen zoeken en piekeren, en uiteindelijk besluit ik er maar een topic over te posten ... en hoppa, ik vindt het antwoord dat ik zoek binnen tien minuten.

Nu werkt de oplossing in bovengenoemd topic prima in IE.
In Firefox werkt het echter niet, en hij geeft de volgende error:
Error: holdtext is not defined
Source File: *snap*
Line: 7
.


Voor het gemak, even het deel jscript zoals ik dat nu in gebruik heb:

(line nummering komen overeen met mijn situatie)
code:
1
2
3
4
5
6
7
8
9
10
11
12
<br>
<br>
<br>
<br>
<br><SCRIPT LANGUAGE="JavaScript">function ClipBoard()
{
holdtext.innerText = copytext.innerText;
Copied = holdtext.createTextRange();
Copied.execCommand("RemoveFormat");
Copied.execCommand("Copy");
}
</SCRIPT>


(line nummering komt niet overeen met mijn situatie)
Dit heb ik na </form> staan, precies voor het PHP deel.

code:
1
<SPAN id="copytext" style="height:150;width:162;background-color:yellow">


En na het PHP gedeelte:
code:
1
2
</SPAN>
   <TEXTAREA id="holdtext" style="display:none;"></TEXTAREA><BUTTON onClick="ClipBoard();">Copy to Clipboard</BUTTON>

[ Voor 75% gewijzigd door r0b op 22-01-2005 03:47 ]