Avatar billede morten_b Nybegynder
03. december 2004 - 09:22 Der er 6 kommentarer og
1 løsning

Kopiere indhold af felt

Er det muligt at lave en knap som kopierer indholdet (html text)af et felt i et skema ind i windows udklipsholder?

Skal helst være HTML eller andet simpelt da mine programmerings-egenskaber er temmelig begrænsede...
Avatar billede morten_b Nybegynder
03. december 2004 - 09:23 #1
Det skal bruges til at kopiere noget tekst fra en hjemmeside over i en Outlook email. Nøjagtig som hvis man markerede det hele og trykkede ctrl-c
Avatar billede cool_casper Nybegynder
03. december 2004 - 09:29 #2
Det kan lade sig gøre med javascript. Et eksempel og links:

<script language="javascript" type="text/javascript">
function copyText(theSel) {
if (!document.all) return; // IE only
theForm = theSel.form;
theForm.copyArea.value=theSel.options[theSel.selectedIndex].value;
r=theForm.copyArea.createTextRange();
r.select();
r.execCommand('copy');
}
</script>


http://www.dynamicdrive.com/dynamicindex11/copytext.htm

http://www.htmlgoodies.com/beyond/clipboard.html
Avatar billede olebole Juniormester
03. december 2004 - 20:00 #3
<ole>

Njaahhh ... det er nu ikke JavaScript, men JScript. Derfor gælder det om, at si alle ikke Explorer browsere fra. Det gør man ikke ved at spørge til 'document.all', da Opera også understøtter 'all' array'et.
Derudover har IE siden version 5.0 understøttet 'clipboardData.setData', som er lidt fiksere  :)

<script type="text/JavaScript">
function myCopy(f) {
    if (!document.all || navigator.userAgent.toLowerCase().indexOf("opera")!=-1) return;
    if (window.clipboardData) {  // IE5+
        clipboardData.setData("Text", f.value);
    } else {  // IE4.X
        var rng = f.createTextRange();
        rng.execCommand("Copy");
    }
}
</script>

<form>
    <input type="text" name="felt">
    <button onclick="myCopy(this.form.felt);return false">TEST</button>
</form>

/mvh
</bole>
Avatar billede olebole Juniormester
03. december 2004 - 20:10 #4
Hvis det er tekst fra en tabel-celle, du skal kopiere, kan du gøre det sådan:

<script type="text/JavaScript">
function myCopy(id) {
    if (!document.all || navigator.userAgent.toLowerCase().indexOf("opera")!=-1) return;
    var f = document.getElementById(id);
    if (window.clipboardData) {
        clipboardData.setData("Text", f.innerText);
    } else {
        var rng, tmp = document.getElementById("tmpField");
        tmp.value = f.innerText;
        rng = tmp.createTextRange();
        rng.execCommand("Copy");
    }
}
</script>

<input type="hidden" id="tmpField">

<table cellspacing="3" cellpadding="10" border="1">
<tr>
    <td>hjkh kjh kjhk jhk jhkjh</td>
    <td>tyt y tgujygjhg jghyjgj hjghg</td>
</tr>
<tr>
    <td id="mitFelt">Kopier denne tekst 2
        ved et tryk på knappen</td>
    <td>tyt y tgujygjhg jghyjgj hjghg</td>
</tr>
</table>
<br><br>
<button onclick="myCopy('mitFelt');return false">TEST</button>
Avatar billede morten_b Nybegynder
04. december 2004 - 00:44 #5
Nice, tænkte nok det kunne laves med noget script.

Ang. andre browsere så skal bruges til Intranet hvor der udelukkende vil blive brugt IE.
Avatar billede morten_b Nybegynder
03. februar 2005 - 16:26 #6
Som sagt skulle det kun bruges på IE så jeg brugte cool_caspers forslag, og det virkede glimrende. Nu mangler jeg bare et svar...
Avatar billede cool_casper Nybegynder
04. februar 2005 - 11:04 #7
svar
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