2009-12-14 5 views
1

Я понимаю, что если все входные данные, введенные как a, b, и c, так и все флажки, проверяются, тогда вывод будет выглядеть так.Классический ASP checkbox question

Response.Write (Request.Form ("a1")) = а, б, в
Response.Write (Request.Form ("CHK")) = 1, 1, 1

Есть ли способ определить, установлен ли флажок соответствующего входного текста, если не все флажки установлены?
т. Е. Ввод вводится как a, b и c, тогда проверяется только соответствующий флажок в поле «c».

Выходной сигнал этого будет:

Response.Write (Request.Form ("a1")) = а, б, в
Response.Write (Request.Form ("CHK")) = 1

<form name="myForm"> 
<input type="text" name="a1" /> 
<input type="checkbox" name="chk" value="1" /> 

<input type="text" name="a1" /> 
<input type="checkbox" name="chk" value="1" /> 

<input type="text" name="a1" /> 
<input type="checkbox" name="chk" value="1" /> 

<input type"submit" value="submit" /> 
</form> 

ответ

9

Вам понадобятся изменить названия ваших входов. Единственный тип ввода, который предназначен для того, чтобы иметь несколько экземпляров, совместно использующих имя, является переключателем. Это делается для того, чтобы вы могли получить взаимоисключающее поведение выбора, для которого предназначены радиокнопки.

В этом случае вы должны указать, что каждый текст и флажок имеют другое имя. Так что ваш HTML будет выглядеть следующим образом:

<form name="myForm"> 
<input type="text" name="a1" /> 
<input type="checkbox" name="chk1" value="1" /> 

<input type="text" name="a2" /> 
<input type="checkbox" name="chk2" value="1" /> 

<input type="text" name="a3" /> 
<input type="checkbox" name="chk3" value="1" /> 

<input type"submit" value="submit" /> 
</form> 

Тогда просто ссылаться на свой третий флажок с:

response.write(request.form("chk3")) 

Это потребовало бы вам написать небольшой код, если вы хотите результаты, чтобы появиться в приятных запятых как вы показали, но я бы сказал, что это уместно.

+0

Это способ сделать это, правый инструмент для правильной работы + 1 –

+0

Спасибо. Я надеялся, что есть еще одна альтернатива. – nolabel

0

Если вам нужна строка с разделителями-запятыми, похожая на «a, b, c», вы можете изменить значения всех ваших флажков на «1», «2», «3» вместо того, 1" .

Смежные вопросы