Toon posts:

[js] plakken/pasten in een iframe.

Pagina: 1
Acties:

Verwijderd

Topicstarter
Beste mensen, ik wil data van mijn klembord plakken in een iframe. Dit kan natuurlijk met een execCommand("paste"), maar dan plakt hij werkelijkwaar alles erin. Dus ook tabellen, afbeeldingen etc. Dit wil ik voorkomen om de structuur niet te vernaggelen.

Ik heb dit op de volgende manier opgelost:
code:
1
2
3
4
5
6
var clipboard = window.clipboardData.getData('text');
var pointer = foo.document.selection.createRange();
if(clipboard != null)
{
    pointer.pasteHTML(clipboard);
}


Maar ik ben hier niet helemaal tevreden over, aangezien hij echt alles eruit haalt (zoals bold, opsommingstekens etc) en er platte tekst van maakt. Zijn er geen mogelijkheden om de HTML te pasten en er dan de ongewenste tags uit te filteren zoals <TABLE>, <TR>, <TD>, <IMG>, etc.?

getData() kent naar mijn weten alleen de argumenten text en URL, helaas geen html.

Bedankt voor elke suggestie.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Gooi je clipboard data in een temp-string, replace/reg-ex je tags die je niet wil er uit en pasteHTML dan die temp-string... :?

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
goed idee, ik ga er mee aan de slag. Eigenlijk vrij simpel, maar ik hoopte stiekem op een elegantere oplossing.

1 puntje, hoe gooi ik de clipboarddata in een tempstring zodat hij de tags wel houdt?

met getData('text') ben ik alles kwijt.

In mijn javascript bible hebben ze het wel over getData('HTML'), maar ik krijg dit op geen manier werkend??

kan ik execCommand('paste') afvangen op een of andere manier?

Het gaat er dus om dat ik de HTML uit het clipboard haal en die in een tempvariabele krijg, waar ik dan regexp's op los kan laten.

[ Voor 84% gewijzigd door Verwijderd op 11-03-2003 11:30 ]