Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


ContentEditable igen

Postades av 2003-10-22 08:22:57 - Patrik Andersson, i forum javascript/dhtml, Tråden har 1 Kommentarer och lästs av 559 personer

Tjenare igen,
Att detta skall vara så svårt då!! Varför måste jag markera text i DIV:en för att få in tabellen där jag vill ha den.

Som det är nu så måste jag markera text i DIVen för att tabellen skall placeras i DIVen. Annars placeras den utanför.

Har någon en lösning? Har suttit med detta för länge nu.

Kolla in exemplet
http://www.comaround.se/beta/editor/editor2.asp

EDIT:
Jag löste det genom att sätt focus på diven i funktionen

<code>
function createTable(cols,rows,width,border,ali) {

document.getElementById("edit").focus();
var d = document.selection.createRange();
var oRow;
var iRow, iCol;
var s = "<table border='" + border + "' align='" + ali + "' width='" + width + "' contenteditable='true' cellpadding='0' cellspacing='0'>"
for (iRow = 0; iRow < rows; iRow++) {
s+='<tr>'
for (iCol = 0; iCol < cols; iCol++) {
s+='<td>&nbsp;</td>'
}
s+='</tr>'
}
d.innerHTML = s
d.pasteHTML(s)
d.pasteHTML("</table>")
d.select()
}
</code>
//Putte


Svara

Sv: ContentEditable igen

Postades av 2003-10-22 08:54:56 - Hans-Gunnar Nilsson

Jag har löst problemet på följande sätt , ger dig en fingervisning för den kompletta lösningen är rätt komplex och innehåller också en massa andra saker.

Sätt först ett id på diven. (edit)
Skall sägas också att följande kod är IE specifik, för ex. Mozilla krävs en annan hantering av den sista delen av koden. Även om du inte kan använda exemplet rakt av så kanske det kan ge dig lite fler ideer.

Använd följande kod för att skapa tabellen:

ierange = document.getElementById('edit').contentWindow.document.selection.createRange();

e = document.getElementById("edit");
table = e.contentWindow.document.createElement("table");
table.setAttribute("border", bordervalue);
table.setAttribute("cellPadding", cellpaddingvalue);
table.setAttribute("cellSpacing", cellspacingvalue);
tbody = e.contentWindow.document.createElement("tbody");

// loopa här för att skapa antal rader
tr =e.contentWindow.document.createElement("tr");
tr.setAttribute("height","5");
tr.setAttribute("bgColor","#FFFFFF");

// loopa igen för att skapa kolumner
td =e.contentWindow.document.createElement("td");
td.setAttribute("height","5");
tr.appendChild(td);

tbody.appendChild(tr);
table.appendChild(tbody);

document.getElementById("edit").contentWindow.focus();
var c = ierange.parentElement();
vad d = document.getElementById("edit").contentWindow.document.createElement("DIV")
var t = d.appendChild(insertNode);
var myhtml = d.innerHTML;
ierange.pasteHTML(myhtml);

Men om det finns någon som har en smidigare lösning på uppgiften som tittar jag gärna på den.

/C


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 559
27 958
271 741
990
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies
Expand
next previous
Close

Previous

0/0

Next