как реализовать флажок в классическом ASP - PullRequest
0 голосов
/ 06 января 2012

У меня есть флажок

<td><strong>Online Ordering: </strong></td>
<td><input type="checkbox" name="OnlineOrdering" value="<%=OnlineOrdering%>" <% if OnlineOrdering = True then response.write "checked='Checked'" end if %>/></td>

Как узнать, установлен ли флажок или снят флажок при отправке формы?

OnlineOrdering = request.form("OnlineOrdering")

это не работает?

Ответы [ 2 ]

2 голосов
/ 06 января 2012

Это должно присвоить true / false переменной OnlineOrdering:

If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
    OnlineOrdering = (Request.Form("OnlineOrdering") <> "")
End If
1 голос
/ 16 июня 2012

Я нашел этот пост, потому что пытался решить ту же проблему.У меня есть решение, которое, кажется, работает хорошо.

В форме HTML создайте динамически генерируемые флажки.Используемое ниже значение this_box_id может быть любым уникальным числом.В моем случае это был первичный ключ (autonumber) для этого вопроса из базы данных SQL.Динамически генерируются флажки со связанным скрытым полем:

<input type="hidden" name="check_box_indicator" value="<%=this_box_id%>">
<input type="checkbox" name="box_id<%=this_email_selection_id%>" 
value="<%=this_box_id%>">

Когда asp возвращает значения для этого, он возвращает несколько значений для check_box_indicator .Вот пример фрагмента строки запроса:

...&check_box_indicator=78&box_id78=78&check_box_indicator=98&check_box...

На следующей странице ASP прочитает данные формы.Он найдет КАЖДЫЙ check_box_indicator и его значение.Это значение можно использовать для проверки значения соответствующего флажка.Если этот флажок возвращается, он был отмечен, в противном случае вы будете знать, что он не был проверен.В приведенном выше примере флажок 78 был установлен, и поэтому было передано значение box_id78, в то время как флажок 98 не был и box_id98 не был отправлен.Вот код для его использования.

For Each this_box_id In Request.Form("check_box_indicator") 'check EVERY box'

   box_state = Request.Form("box_id"&this_box_id) 'collect passed values only'

   if box_state  > 0 then
       store_value = "y"
   else
       store_value = "n"
   end if

   ' you now have the this_box_id number identifying this item in the DB, '
   ' the value of the check box, if it was passed '
   ' and a definite y or n value '

Next

С примером строки запроса вы получите 78 y, 98 n

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...