webForumDet fria alternativet
Logga in / Bli medlem

formulärelementnamn som variabel

JavaScript

5 svar · 224 visningar · startad av Koggen

Medlem sedan juni 2002169 inlägg
Trådstart#1

Jag har gjort följande funktion för att kunna lägga in textformatering i en textarea som sen mha ASP skall ersättas med taggar (liknande denna på forumet faktiskt):


function formatF(){
var namn=prompt("Textformatering av svensk beskrivning - Fetstil","Skriv in texten du vill ha i fetstil här.");
if(namn) {
document.form1.gruppbeskrivning.value=document.form1.gruppbeskrivning.value + "*fetstil börjar*" + namn + "*fetstil slutar* ";
document.form1.gruppbeskrivning.focus();
}
}

Anropet:

onClick="formatF()

Ovanstående funktion fingerar, men jag har provat att ange ett argument bestående av namnet på formulärelementet (i detta fallet gruppbeskrivning för att kunna återanvända funktionen på flera ställen, men det fungerar inte! Inget alls händer när jag skriver

function formatF(falt){
var falt
var namn=prompt("Textformatering av svensk beskrivning - Fetstil","Skriv in texten du vill ha i fetstil här.");
document.form1.falt.value=document.form1.falt.value + "*fetstil börjar*" + namn + "*fetstil slutar* ";
o.s.v...

Anropet:

onClick="formatF(gruppbeskrivning)

Jag får inget felmeddelande heller... vad är fel??

Tack

Medlem sedan juni 200032 967 inlägg
#2
  1. bort med var falt ur koden. Det är ju en inparameter.
  2. document.form1.elements[falt].value skulle kunna tänkas fungera.

mvh

Medlem sedan juni 2002169 inlägg
#3

Nix tyvärr @nders, det funkade inte. Får felmeddelande
document.form1.elements[...] är null eller inget värde.

Det är precis som variabeln inte läses in.

Har du fler idéer är jag tacksam

Medlem sedan dec. 20025 483 inlägg
#4

Sätt ett par "snuffar" kring gruppbeskrivning när du anropar funktionen.

:)

Medlem sedan juni 2002169 inlägg
#5

Det är löst nu, det var nog jag som inte fattade @nders råd rätt.

Med elements[falt] och numret på formuläret vid anropet (0 för första) som argument så funkar det.

Den första varianten fick jag inte rätt på (varken med eller utan "snuffar")

Tack för hjälpen

Medlem sedan dec. 20025 483 inlägg
#6

Det jag menade var följande:

function formatF( [b]falt[/b] ){
     document.form1.elements[ [b]falt[/b] ]...
}

...

onclick="formatF('gruppbeskrivning')"...

:)

262 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)