我有一些错误纠正代码,我想测试以确保由" Request.Form ["复选框"]"分配的变量是检查时给出的值(让我们说"勾选")或者如果未选中它将会是什么值。
在我尝试使用Request.Form
为其赋值之前,我将变量声明为空字符串我尝试了以下内容:
if(IsGangMember != "ticked" || IsGangMember != "")
{
errorMessage = "The \"Search For Street Gang Member\" field contains an invalid value.";
}
而且:
if(IsGangMember != "ticked" || IsGangMember != null)
{
errorMessage = "The \"Search For Street Gang Member\" field contains an invalid value.";
}
而且:
if(IsGangMember != "ticked" || IsGangMember.IsEmpty())
{
errorMessage = "The \"Search For Street Gang Member\" field contains an invalid value.";
}
我还尝试将值打印到屏幕上(如果未选中框)以查看它,当然它是空的,所以我不知道除了空字符串之外的值是什么或null。
感谢任何帮助,谢谢!
更新:
好的,给出的所有解决方案都非常有意义,但是如果未选中,错误消息仍然会被设置。
这就是我正在做的所有事情:
var IsGangMember = "";
然后:
IsGangMember = Request.Form["sIsGangMember"];
(sIsGangMember是输入复选框字段的名称) 然后:
if(IsGangMember != "ticked" || !String.IsNullOrEmpty(IsGangMember))
{
errorMessage = "The \"Search For Street Gang Member\" field contains an invalid value.";
}
如果未选中,则仍会分配errorMessage。 :(为什么?
答案 0 :(得分:1)
如果未选中该复选框,则在Request.Form集合中将无法使用该复选框。如果选中,它将位于带有“checkbox”键和值“on”的集合中。
所以你可以通过
轻松检查Request.Form["checkbox"] != null
答案 1 :(得分:1)
使用String.IsNullOrEmpty
if(!String.IsNullOrEmpty(IsGangMember))
{
//test for other values
}
else
{
//String is empty
}
认为应该是另一种方式
if(IsGangMember != "ticked" || String.IsNullOrEmpty(IsGangMember))
{
errorMessage = "The \"Search For Street Gang Member\" field contains an invalid value.";
}
答案 2 :(得分:0)
XD
捂脸!
很明显......我需要“&&”不是“||” PSHH
我怎么不早点抓住这个......
当然,它总是一个“或”另一个:S
我需要睡觉......