2012-10-04 61 views
0

我有一些錯誤更正代碼,我想測試以確保由「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之外的其他值。

任何幫助表示讚賞,謝謝!

UPDATE:

好吧,考慮到所有的解決方案可以完美地工作,但選中時,該錯誤消息仍然被設置。

這簡直是我的全部用它做:

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

你爲什麼不嘗試使用它的「ID」訪問複選框? – Praveen

+0

IsGangMember的聲明是什麼? –

+0

@Praveen因爲表單在帖子上尋找名字......無論如何,ID和名稱在語法上是完全相同的。 – VoidKing

回答

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."; 
} 
+0

它仍然無法通過測試....請閱讀上面的編輯... – VoidKing

+0

它不應該是其他方法,因爲我正在測試以查看複選框是否包含我期望它具有的值,但是與其他方法一樣測試null或空字符串時,它仍會進入if分支,就像爲null,空字符串或「勾號」值指定給IsGangMember一樣。 – VoidKing

+0

您正在使用'ORI'的'||'。所以,如果其中一個是真的,它將分支。拼寫出你想如何檢查條件 – codingbiz

1

如果複選框未選中它不會在Request.Form集合可用。如果選中它會隨着鍵「複選框」和值「的」集合中。

所以你可以通過easyly

Request.Form["checkbox"] != null 
+0

那麼不應該我以前分配給一個空字符串的變量仍然是一個空字符串?我實際上需要檢查分配給變量的值。 – VoidKing

+0

@VoidKing是的你是對的。然後你可以通過String.IsNullOrEmpty檢查它作爲「編碼商業」建議。 –

0

XD

捂臉!

很明顯....我需要「& &」不是「||」 pshh

我怎麼沒有趕上這個更快....

當然這會永遠是一個「或」其他:S

我需要睡眠......

相關問題