我在很多页面中都有一系列大表单,所以我做了一些函数,当有人更新页面时应该填充表单字段,情况是这样的:
<label class="radio inline"><input type="radio" name="imm_AriaCondizionata" value="s" <%=richecca("imm_AriaCondizionata","s")%>>Si </label>
<label class="radio inline"><input type="radio" name="imm_AriaCondizionata" value="n" <%=richecca("imm_AriaCondizionata","n")%>>No </label>
function richecca(NomeCampo,sino)
if request(NomeCampo) <> "" then
if request(Nomecampo) = sino then
richecca = " checked "
else
richecca = ""
end if
else
if eval(NomeCampo) = sino then
richecca = " checked "
else
richecca = ""
end if
end if
end function
所以,它会检查请求中是否有一些值(都是formand querystring),如果没有,它会检查一个名称传递给函数的变量。
问题是,即使我把值放在变量中,它总是采用“else”分支。怎么可能......它是在评估另一种类型的刺痛吗? 我的意思是:
Dim imm_AriaCondizionata = "n"
richecca("imm_AriaCondizionata","n")
它返回第二个的“”,所以那个:
if eval(NomeCampo) = sino then
richecca = " checked "
else
richecca = ""
end if
这里如果我写一个response.write(eval(NomeCampo))和response.write(sino)我有一个值为“n”的摊位......我对此感到很生气......怎么样有可能吗?
答案 0 :(得分:0)
if strcomp(eval(NomeCampo),sino,1) = 0 then
richecca = " checked "
else
richecca = ""
end if
我终于找到了这个strcomp !!!这使得两个变量的比较二进制或文本!
http://www.w3schools.com/vbscript/func_strcomp.asp 这篇文章。 :d 感谢