webForumDet fria alternativet

Från javascript till asp.

JavaScript

21 svar · 749 visningar · startad av Inferis

Medlem sedan sep. 2000667 inlägg
Frågan#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);
}
Medlem sedan dec. 20025 483 inlägg
#2
function openAddFavoriteDialog(id) {
	alert(id);
	openWindow("vote.asp?id=" + id, 450, 550, 1);
}
Medlem sedan sep. 2000667 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.

Medlem sedan juli 20011 129 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

Medlem sedan feb. 20034 441 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...

:)

Medlem sedan sep. 2000667 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.

Medlem sedan juli 20011 129 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

Medlem sedan sep. 2000667 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?

Medlem sedan sep. 2000667 inlägg
#9

I alertrutan kom det upp NaN.

Medlem sedan feb. 20034 441 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?

Medlem sedan dec. 20042 245 inlägg
#11

Koplik skrev:

type är reserverat,

Är det det?

Medlem sedan juni 20014 421 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

Medlem sedan sep. 2000667 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?

Medlem sedan feb. 20034 441 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 " ").

Medlem sedan juni 20014 421 inlägg
#15

Nej, type är inte reserverat.

Medlem sedan sep. 2000667 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.

Medlem sedan nov. 20017 144 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>

Medlem sedan sep. 2000667 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å.

Medlem sedan juni 20008 205 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);
Medlem sedan sep. 2000667 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?

134 ms totalt · 2 externa anrop · v20260731065814-full.2ae45ccc
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)