webForumDet fria alternativet

Överföra information från en iframe till en databas.

JavaScript

13 svar · 482 visningar · startad av trexter.com

Medlem sedan apr. 20021 203 inlägg
Frågan#1

Jag har en iframe som man kan skriva i (det vill säga, iframen är inget dokument i sig).
Sedan vill jag kunna klicka på en knapp och efter detta ha vad som, just nu, står i iframen, i en variabel.

Hur hade ni enklast fixa detta?

Mina tankar gick som så att jag skulle kopiera innehållet till clipboard med javascript men det medför vissa problem...

Som sagt, hur hade ni gjort?

:)

Medlem sedan apr. 20021 203 inlägg
#2

Det finns inget Request.Iframe? ;)

Medlem sedan sep. 2002538 inlägg
#3

Förstår inte riktigt hur du menar, kan du förklara dig lite bättre?
Har du ett formulär där man skriver in någonting eller vad menar du :/ ?

Medlem sedan feb. 20022 594 inlägg
#4

Är det inte möjligt att hämta informationen på samma sätt som du hämtar den till IFramen?

Medlem sedan apr. 20021 203 inlägg
#5

Det ligger till som så att jag ska göra en slags WYSIWYG editor åt
en viss person.

Han vill att man ska kunna klicka på olika knappar och på så sätt
kunna påverka text som man själv skriver i en ruta. Det kan t.ex.
göra att markerad text blir fet eller att en länk skapas.
Det är inte detta som är mitt problem utan följande:

Nu ska besökaren kunna klicka på en knapp som gör att koden
för det han "tryckt fram" visas (detta är fixat) och sedan
kunna klicka på en ny knapp för att koden omedelbart ska sparas
i en databas.

Detta låter naturligtvis lätt och det är det också... om jag hade
använt en textarea! Men nu är det så att jag bara kan välja på
en iframe (i designläge, man kan skriva i den, det är inget
dokument i sig) eller en div. Jag har valt en iframe men har ni
någon lösning till div-varianten så berätta gärna den.

Min nuvarande lösning, som verkligen inte håller måttet, är att
besökaren får:
1. Skapa någonting i WYSIWYG miljö
2. Klicka på en knapp för att se koden, få den markerad och
kopierad (med JavaScript).
3. Gå till en annan sida för att där klicka på en ny knapp som
kopierar in den i en textarea (med JavaScript).
4. Klicka på Spara.

Nu är det ju som så att en bild säger mer än tusen ord så därför
tänkte jag att jag skulle bjuda på 2002 sådana. Så här ser min
editor ut i dagsläget:

WYSIWYG:

Code:

:)

Medlem sedan apr. 20021 203 inlägg
#6

Ingen som vet?

Medlem sedan mars 20015 287 inlägg
#7

Hur ser koden ut som visar den kod man skapat i editorn?

Spontant känns det som om att nyckeln ligger i att när man klickar på en kanpp för att spara skall koden "visas" -så som du har det nu, samt hamna i ett hiddenfält i ett formulär som du sen postar till en databas.
Iofs är detta en klar javascriptsfråga, men visa den kod du har som du kör i dag.
(Iofs no2, fanns det ingen lösning där du hittade scriptet från början?)

Medlem sedan apr. 20021 203 inlägg
#8

solbulle skrev:

Hur ser koden ut som visar den kod man skapat i editorn?

Här har du hela toggle-funktionen mellan kod/ouput:

  function doToggleView()
  {  
      If (Villkor...)
      iHTML = iView.document.body.innerHTML;
      iView.document.body.innerText = iHTML;

      iView.document.execCommand('SelectAll', false, null);
      iView.document.execCommand('Copy', false, null);

      tblCtrls.style.display = 'none';
      selSize.style.display = 'none';
      iView.focus();
      
      viewMode = 2;
    }
    else
    {
      iText = iView.document.body.innerText;
      iView.document.body.innerHTML = iText;
      
      tblCtrls.style.display = 'inline';
      selSize.style.display = 'inline';
      iView.focus();
      
      viewMode = 1;
  }

solbulle skrev:

Spontant känns det som om att nyckeln ligger i att när man klickar på en kanpp för att spara skall koden "visas" -så som du har det nu, samt hamna i ett hiddenfält i ett formulär som du sen postar till en databas.

Du skulle inte vilja visa den koden då? Det är ju den jag eftersöker.... eller flytta denna tråden till javascripts-forumet.

solbulle skrev:

Iofs är detta en klar javascriptsfråga, men visa den kod du har som du kör i dag.

Eftersom jag inte tycker att den tillgodoser mina behov har jag inte skrivit den än....

solbulle skrev:

(Iofs no2, fanns det ingen lösning där du hittade scriptet från början?)

Scriptet jag hittade är på nästan alla sätt och vis olikt det jag har nu....

:)

Medlem sedan juni 200032 967 inlägg
#9

Det känns som att iHTML = iView.document.body.innerHTML; är nyckeln. Släng in en liten knapp som lyfter in det innehållet i ett hiddenfält, och posta över till en annan frame.

<form action="annasida.asp" method="post" target="annanframe" name="theform">
<input type="hidden" name="htmlkoden" value="">
<input type="button" value="klickadåra!" onclick="document.theform.htmlkoden.value=iView.document.body.innerHTML; document.theform.submit();">
</form>

Någonting sånt.

(Jag flyttade tråden till javascript-forumet)

Mvh,
anders
forumledarsnabel

Medlem sedan apr. 20021 203 inlägg
#10

Finns det något som är lika ärofyllt som att få hjälp av självaste Snabelanders?
Koden fungerade... naturligtvis!

:bire

Medlem sedan juni 200032 967 inlägg
#11

:r :bire

Medlem sedan mars 20015 287 inlägg
#12

Hmpf, det var ju så jag sa att man skulle göra. §jr :e

Medlem sedan apr. 20021 203 inlägg
#13

Jag skulle vilja spinna vidare på denna tråden och fråga hur jag ska ändra funktionen "doToggleView" för att man inte ska kunna skriva och ändra i iframen?

Som när man sätter en textarea till disabled...

:)

Medlem sedan aug. 2002477 inlägg
#14

lite ot

...men här är en bra artikel om att skripta mot iframe:
http://www.oreillynet.com/pub/a/javascript/2002/02/08/iframe.html

260 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)