webForumDet fria alternativet

function med valfritt argument

ASPur ASP

6 svar · 205 visningar · startad av doggelito

Medlem sedan juni 20003 076 inlägg
Frågan#1

är det möjligt att använda en function som denna:

function checkform_empty(strtext,level)
strvalue = trim(strtext)
if level = "user" then
checkform_empty = strvalue
else
	if strvalue = "" then
	errors = errors & 1
	end if
	checkform_empty = strvalue
end if
end function

fast sen vill jag kunna hämta funktionen på dessa två sätt:

password = checkform_empty(request.form("password"),request.form("userlevel"))
och
password = checkform_empty(request.form("password"))

alltså kan man få level till att vara "valfri"?

Medlem sedan dec. 200012 464 inlägg
#2

Nej, om du har definierat funktionen med två parametrar så måse du alltid ange två parametrar i anropet.

Du får skicka null eller "" och hantera det i funktionen.

Medlem sedan dec. 1999707 inlägg
#3

Nja, inte så valfri som du vill ha den med att bara skicka med ett argument till den. Men du kan göra en sån koll i funktionen så att om det andra argumentet ex är null så... händer nåt annat roligt.

Du vet väl förresten att du kan sätta argument till "ByVal" i en funktion så slipper du använda lokala variabler i funktionen. Ex:

function checkform_empty(ByVal strtext, ByVal level)

  strtext = trim(strtext)
  if level = "user" then
    checkform_empty = strtext
  else
    if len(strtext) = 0 then
      errors = errors & 1
    end if
    checkform_empty = strtext
  end if

end function

Antar att detta inte är den riktiga funktionen. :)

Medlem sedan juni 20003 076 inlägg
#4

saken var den att jag vill bygga om funktionen tiil att använda två
argument istället för ett, problemet är bara det att funktionen används på ett antal sidor som jag ej vill skriva om.

Stämmer det att asp.net klarar en sådan programering?

Medlem sedan juni 200032 967 inlägg
#5

Det utgår jag ifrån. I Visual Basic kan man använda optionalparametrar

function test(byval strTest1 as string, optional byval strTest2 as string = "") as string
...
end function

Det skulle förvåna mig mycket om inte optional finns att tillgå i asp.net.

Fast jag vet så klart inte.

Mvh,

Medlem sedan juni 20003 076 inlägg
#6

okidoki!

coolt! jag blev medlem före @nders men han har mer än 10.000 fler inlägg, nu får man ta å öka!

Medlem sedan dec. 1999707 inlägg
#7

Lite sök och ersätt som gäller i sådana falll. :)

136 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)