#asp.net
#asp.net
Вопрос:
Как я могу узнать конкретное значение для формы с помощью request.form
? Я долго пытаюсь это сделать, но безуспешно.
i want to check something like this
if (request.form.contains("text_check")) //But it doesn't work
{
go in;
}
else{
here we go;
}
я хочу знать конкретное значение от AllKeys, а также общее количество всех ключей.
Ответ №1:
Чтобы проверить, существует ли ключ в данных формы, вы можете просто сравнить значение с null:
if (Request.Form["text_check"] != null) {
Если ключ существует, вы всегда получаете обратно строковое значение, даже если значение пустое.
Если вы хотите проверить, есть ли непустое значение, вы можете использовать String.IsNullOrEmpty
метод:
if (!String.IsNullOrEmpty(Request.Form["text_check"])) {
Комментарии:
1. Кажется, это лучший и самый простой способ. Я попытался передать javascript null, и он отображается на сервере как пустой, но не null. Это работает для меня. 1
Ответ №2:
Если вы хотите проверить, существует ли определенный ключ в Request.Form
коллекции, вы можете сделать это следующим образом:
if(Request.Form.AllKeys.Any(k => k == "text_check")) { ... }
и затем получить его значение:
if(Request.Form.AllKeys.Any(k => k == "text_check"))
{
var textCheckValue = Request.Form["text_check"];
}
Чтобы получить общее количество ключей, затем:
var count = Request.Form.AllKeys.Count();
Ответ №3:
Если вы используете элементы управления на стороне сервера, вы можете использовать Request.Form.Contains(text_check.UniqueId)
, чтобы убедиться, что форма имеет это значение во время обратной передачи.