webForumDet fria alternativet

Skicka med formnamn som argument till funktion

JavaScript

2 svar · 198 visningar · startad av MickeA.com

Medlem sedan feb. 20034 441 inlägg
Frågan#1

Hej !

På min hemsida har jag en rad olika funktioner som arbetar mot olika formulär. Flera formulär kan kalla på alla funktioner om det är bättre förklarat.

function AddText(NewCode) {
		document.form.inlagg.value+=NewCode
	}
	function citat() {
		txt=prompt("Skriv ditt Citat:","");      
			if (txt!=null) {
				AddTxt="[citat ]"+txt+"[/citat ]";
				AddText(AddTxt);
			} 
}

För att kalla på den där kör jag onclick="citat();"
Den har jag blandannat, den funktionen används av två olika forumlär, dessa formulär kan _inte_ ha samma namn, alltså måste jag skicka med formulärsnamnet i funktionen, så att funktionen vet i vilket formulär citatet ska in. Är ni med?! Jag fattar inte ett jota av det här, har försökt o försökt men får det inte att funka.

Medlem sedan sep. 20021 655 inlägg
#2

Indenteringen är mycket förvirrande. Det är två separata funktioner, men ser ut som en.

Men du kan göra så här:

<script type="text/javascript">
function AddText(NewCode, theForm) {
		theForm.inlagg.value+=NewCode
}

function citat(theForm) {
	txt=prompt("Skriv ditt Citat:","");      
	if (txt!=null) {
		AddTxt="[citat ]"+txt+"[/citat ]";
		AddText(AddTxt, theForm);
	} 
}
</script>

När du anropar citat() skriver du onclick="citat(this.form)" alternativt onclick="citat(document.formulärsnamn)".

Medlem sedan feb. 20034 441 inlägg
#3

Hmm, ok, faktum är att jag prova att ha funktionen exakt sådär, men jag skrev onclick="citat(formulärsnamn);" och hade inte med varken this eller document, det kanske var därför det inte funkade. Skall prova ;)

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