webForumDet fria alternativet

Från javascript till asp.

21 svar · 749 visningar · startad av Inferis

InferisMedlem sedan sep. 2000669 inlägg
#1

Hej.
Jag försökte mig på det här innan, men gav upp.

Hur kan jag hämta värdet id och få det till asp?

function openAddFavoriteDialog(id) {
	alert(id);
	openWindow("vote.asp<%=request.querystring("id")%>", 450, 550, 1);
}
Peter SMedlem sedan dec. 20025 484 inlägg
#2
function openAddFavoriteDialog(id) {
	alert(id);
	openWindow("vote.asp?id=" + id, 450, 550, 1);
}
InferisMedlem sedan sep. 2000669 inlägg
#3

Tack!
Men hur gör man om vill lägga till fler?

function openAddFavoriteDialog(id) {
	alert(id);
	openWindow("vote.asp?id=" + id"&grad=" +grade"&typ="+type, 450, 550, 1);
}

Vill alltså hämta strängarna från id, type och grade.

KoplikMedlem sedan juli 2001826 inlägg
#4

Inferis skrev:

Tack!
Men hur gör man om vill lägga till fler?

function openAddFavoriteDialog(id) {
	alert(id);
	openWindow("vote.asp?id=" + id"&grad=" +grade"&typ="+type, 450, 550, 1);
}

Vill alltså hämta strängarna från id, type och grade.

Nästan rätt. men plus behövs för att konkatera.

function openAddFavoriteDialog(id, grade, sType) {
	alert(id);
	openWindow("vote.asp?id=" + id + "&grad=" + grade + "&typ=" + sType, 450, 550, 1);

type är reserverat, så jag böt ut det mot sType

MickeA.comMedlem sedan feb. 20034 528 inlägg
#5

Inferis skrev:

Tack!
Men hur gör man om vill lägga till fler?

function openAddFavoriteDialog(id, grad, type) {
	alert(id + grad + type);
	openWindow("vote.asp?id=" + id + "&grad=" + grade + "&typ=" + type, 450, 550, 1);
}

Så gör man! ;)

/red
Så var man inte först nu heller...

:)

InferisMedlem sedan sep. 2000669 inlägg
#6

Vad menas med att type är reserverat? Det är alltså request.querystring("type") jag vill åt. Fältet i MySQL heter något helt annat.

KoplikMedlem sedan juli 2001826 inlägg
#7

Inferis skrev:

Vad menas med att type är reserverat? Det är alltså request.querystring("type") jag vill åt. Fältet i MySQL heter något helt annat.

Type är reserverat i Javascript för element.type för att få ut typ av element.
Jag är inte 100% på att den säger ifrån om du använder det som namn, men jag tror åtminstone det :)
För att du ska fånga type i asp så får du döpa om parametern du skickar till type istället för typ.


function openAddFavoriteDialog(id, grad, type) {
	alert(id + grad + type);
	openWindow("vote.asp?id=" + id + "&grad=" + grade + "&typ=" + type, 450, 550, 1);
}

^ Här skickar du grad och typ till asp-sidan.

function openAddFavoriteDialog(id, grad, type) {
	alert(id + grad + type);
	openWindow("vote.asp?id=" + id + "&grade=" + grade + "&type=" + type, 450, 550, 1);
}

^ Nu skickar du grade och type till asp-sidan

InferisMedlem sedan sep. 2000669 inlägg
#8

Det verkar fungera, men jag får vote.asp?id=594&grade=undefined&type=undefined

Är hyfsat säker på att grade och type får värden?

InferisMedlem sedan sep. 2000669 inlägg
#9

I alertrutan kom det upp NaN.

MickeA.comMedlem sedan feb. 20034 528 inlägg
#10

Står inte NaN för Not-a-Number?
Om du byter ut alertraden mot:

alert(id.value + "\n" + grad.value + "\n" + typ.value);

Se att jag bytt ut "type" mot "typ" ovan, just om det är reserverat.
Vad får du upp i din alert?

zcorpanMedlem sedan dec. 20042 269 inlägg
#11

Koplik skrev:

type är reserverat,

Är det det?

colioneMedlem sedan juni 20013 386 inlägg
#12

zcorpan skrev:

Är det det?

Jag tror jag vet var du vill komma zcorpan. ;)

Svaret är ett rungande nej!

Stilstudie: :)

<script>
var type="foo"
alert(type)
</script>

Dessa är däremot reserverade:

abstract  	else		instanceof	switch  
boolean  	enum    	int  		synchronized  
break   	export  	interface  	this  
byte    	extends  	long  		throw  
case    	false   	native  	throws  
catch   	final		new  		transient  
char    	finally  	null  		true  
class   	float   	package  	try  
const   	for     	private  	typeof  
continue  	function  	protected  	var  
debugger  	goto    	public  	void  
default  	if      	return  	volatile  
delete  	implements	short 	 	while  
do      	import		static  	with  
double  	in		super

Sen finns det ett gäng icke rekomenderade:
http://www.javascripter.net/faq/reserved.htm

InferisMedlem sedan sep. 2000669 inlägg
#13

Kanske ska tillägga att strängen type inte är siffervärde.

Är det inte samma kod som gäller om det inte är siffror i strängen?

Var type reserverat eller inte egentligen? Vilken kod är det som gäller?

MickeA.comMedlem sedan feb. 20034 528 inlägg
#14

Då anropar du funktionen med:

funktionsnamn(tal, 'sträng', tal, 'sträng');

När du skickar med en sträng så ska dom alltså omslutas av ' ' (eller " ").

colioneMedlem sedan juni 20013 386 inlägg
#15

Nej, type är inte reserverat.

InferisMedlem sedan sep. 2000669 inlägg
#16

Då är det denna koden som gäller?

function openAddFavoriteDialog(id, grade, type) {
	alert(id + grade + type);
	openWindow("vote.asp?id=" + id + "&grade=" + grade + "&type=" + type, 450, 550, 1);
}

Type är som sagt inte numrerisk.

Jesper TMedlem sedan nov. 20017 058 inlägg
#17

Ja och plocka med citationstecken runt strängar när du kallar på funktionen.

<a href="#" onclick="openAddFavoriteDialog(34, 365, 'Apa')">Go!</a>

InferisMedlem sedan sep. 2000669 inlägg
#18

Jesper T skrev:

Ja och plocka med citationstecken runt strängar när du kallar på funktionen.

<a href="#" onclick="openAddFavoriteDialog(34, 365, 'Apa')">Go!</a>

Detta kan jag tyvärr inte ändra på. Funktionen kallas från en Flash-fil som jag inte kan ändra på.

spangoMedlem sedan juni 20006 147 inlägg
#19

Om det bara skickas med en parameter från flashen spelar det ingen roll hur många parametrar du fläskar in i funktionshuvudet. Varifrån kommer värdena på grade och type?

Btw, man ska koda om alla parametrar till URL-format innan man använder dem.

openWindow("vote.asp?id=" + encodeURIComponent(id + '') + "&grad=" + encodeURIComponent(grade + '') + "&typ=" + encodeURIComponent(type + ''), 450, 550, 1);
InferisMedlem sedan sep. 2000669 inlägg
#20

Enligt förra kodaren så ska det skickas tre parametrar. id, type och grade.

Kan man på något sätt kolla vilka parametrar som skickas?

Genererad på 381 ms · cache AV · v20260730165559-full.f96bc7eb