webForumDet fria alternativet

Kolla QueryString mot DB Id

ASP

4 svar · 264 visningar · startad av bigsky

Medlem sedan maj 2002821 inlägg
Frågan#1

Jag vill i en dropdown som skrivs ut med Do Until rsGetProductColors.EOF kolla om någon post i databasens räknarfält motsvarar den siffra som finns i QueryStringen. Men det fungerar inte, "selected" skrivs inte ut fast det inträffar en matchning.

<% Do Until rsGetProductColors.EOF %>
<option value="<% = rsGetProductColors("Id") %>"<% If Request.QueryString("prodvar") = rsGetProductColors("Id") Then Response.Write(" selected") End If %>><% = rsGetProductColors("Color") %> + <% = rsGetProductColors("ExtraCharge") & " " & strCurrency %></option>
<% rsGetProductColors.MoveNext
Loop %>
Medlem sedan apr. 20003 174 inlägg
#2

Om det är numeriska värde kan du behöva formatera värdena för att få rätt resultat, en variant:

...

Function fIsSelected(value1,value2)
	If IsNumeric(value1) AND IsNumeric(value2) Then
		If cLng(value1) = cLng(value2) Then
			fIsSelected = " selected=""selected"""
		End If
	Else
		If trim(value1) = trim(value2) Then
			fIsSelected = " selected=""selected"""
		End If
	End If
End If

...

Do Until rsGetProductColors.EOF
	Response.Write "<option value="""& rsGetProductColors("Id") &""""& fIsSelected(Request.QueryString("prodvar"),rsGetProductColors("Id")) &">"& rsGetProductColors("Color") &" + "& rsGetProductColors("ExtraCharge") &" "& strCurrency &"</option>"
	rsGetProductColors.MoveNext
Loop 

...
Medlem sedan juni 200032 967 inlägg
#3

Lösningen heter subtypskonvertering.

If Clng(Request.QueryString("prodvar")) = Clng(rsGetProductColors("Id")) Then

mvh

Medlem sedan dec. 2002299 inlägg
#4

If Clng(Request.QueryString("prodvar")) = Clng(rsGetProductColors("Id")) Then response.write (" selected=selected")

Medlem sedan maj 2002821 inlägg
#5

@nders, lika kungligt som vanligt...

264 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)