Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to loop through the FormCollection to check if textboxes have values?

Tags:

asp.net-mvc

I have a search page that has 6 textboxes which i pass as FormCollection to the action in the controller. I dont want to search for records if ther is no values in textboxes.

Is there a way to loop through all textboxes in FormCollection to check which ones have values in them?

I am a student in the college and this project is part of my summer experience program. I realize that this is a newbie question :) Thank you!

like image 259
Alex Avatar asked May 28 '10 21:05

Alex


2 Answers

You can loop through the FormCollection like this:

foreach( string key in forms.Keys )
{
    ...
}

However, note that the browser only sends you names and values. It does not send you the types of inputs, so you have no way to check if the value is a checkbox, unless you know all checkboxes names in advance. But if that's the case, you don't need to loop - just take them out of the collection by name.

like image 195
Fyodor Soikin Avatar answered Oct 22 '22 07:10

Fyodor Soikin


List<string> list = new List<string>();
for(int i= 0; i< form.AllKeys.Count(); ++i)
{
    list.Add(form.Get(i));
}

This will give you all the actual values for each key

like image 27
Kai CriticallyAcclaimed Cooper Avatar answered Oct 22 '22 07:10

Kai CriticallyAcclaimed Cooper