Флажок проверки ASP при отправке - PullRequest
0 голосов
/ 26 марта 2012

У меня есть форма с 3 текстовыми полями и 3 флажками.Я реализовал проверку VB Script, поэтому, если пользователь отправляет форму и оставляет что-то пустым, он вернется к форме WHILE с уже заполненными полями.Тем не менее, это не работает для чакбоксов.

это код, который я использую для флажков Я делаю код со значением ""

<input type="checkbox" name="ClaimSection_ActivityProof"  id="ClaimSection_ActivityProof"  value="<%=Request.Form("ClaimSection_ActivityProof")%>" style="width:20px" />
<input type="checkbox" name="ClaimSection_InvoicesPayableByPartner" id="ClaimSection_InvoicesPayableByPartner" value="<%=Request.Form("ClaimSection_InvoicesPayableByPartner")%>"  style="width:20px" />
<input type="checkbox" name="ClaimSection_InvoicesPayableByGFI" id="ClaimSection_InvoicesPayable" value="<%=Request.Form("ClaimSection_InvoicesPayable")%>" style="width:20px" />

Для сокращения, если пользователь установит 2 флажка, отправит форму, и когда он будет перенаправлен обратно в форму, флажки останутся отмеченными.Как я могу это сделать, пожалуйста?

Ответы [ 3 ]

1 голос
/ 26 марта 2012

Атрибут value на самом деле не подходит для проверки того, что чекбоксы сохраняют свое проверенное состояние при загрузке / обратной передаче.

Для этого вам нужно проверить, были ли они отмечены при отправке («on» в request.form), если «on», то установить флажок = «проверено».

Пример:

<%

if len(request.form("ClaimSection_ActivityProof")) > 0 then
    ClaimSection_ActivityProof_Checked = " checked=""checked"""
else
    ClaimSection_ActivityProof_Checked = ""
end if

%>

<input type="checkbox" name="ClaimSection_ActivityProof"  id="ClaimSection_ActivityProof" <%=ClaimSection_ActivityProof_Checked %> style="width:20px" />

Надеюсь, что это имеет смысл.

J.

1 голос
/ 27 марта 2012

Назовите (или сгруппируйте) флажки с тем же именем (я предполагаю, что все они связаны с вопросом ClaimSection) Таким образом, вы можете назвать их все как «ClaimSection». Просто убедитесь, что вы назначаете каждому свое уникальное значение!

Пример;

<input type='checkbox' name='ClaimSection' value='ActivityProof'>
<input type='checkbox' name='ClaimSection' value='InvoicesPayableByPartner'>
<input type='checkbox' name='ClaimSection' value='InvoicesPayableByGFI'> 

С этим именем, если ваш пользователь установит более 2 флажков, вы получите соответствующие значения через запятую. Таким образом, если ваш пользователь установит последние 2 флажка, вы получите взамен «InvoicesPayableByPartner, InvoicesPayableByGFI».

Теперь, когда вы это знаете, не составит труда настроить группу ветвей для обработки проверенных и непроверенных значений путем сравнения с тем, что вы получили в запросе ("ClaimSection")

Что-то вроде следующего может привести вас в правильном направлении ..

dim submitted_ClaimSections 
submitted_ClaimSections = request("ClaimSection") 
submitted_ClaimSections = "," & submitted_ClaimSections & ","

//handle the ActivityProof checkbox checked_or_not ="" 
if  instr(submitted_ClaimSections,"," & "ActivityProof" & ",")>0 then       
    checked_or_not = "checked" 
end if 
Response.write "<input type='checkbox' name='ClaimSection' value='ActivityProof' " & checked_or_not & "> ActivityProof" 

//handle the InvoicesPayableByPartner checkbox checked_or_not ="" 
if instr(submitted_ClaimSections,"," & "InvoicesPayableByPartner" & ",")>0 then     
    checked_or_not = "checked" 
end if 
Response.write "<input type='checkbox' name='ClaimSection' value='InvoicesPayableByPartner' " & checked_or_not & "> InvoicesPayableByPartner" 


//handle the InvoicesPayableByGFI checkbox checked_or_not ="" 
if instr(submitted_ClaimSections,"," & "InvoicesPayableByGFI" & ",")>0 then
    checked_or_not = "checked" 
end if 
Response.write "<input type='checkbox' name='ClaimSection' value='InvoicesPayableByGFI' " & checked_or_not & "> InvoicesPayableByGFI"
1 голос
/ 26 марта 2012

Я думаю, вы должны опубликовать данные своей формы. Попробуйте следующие ссылки:

http://www.motobit.com/tips/detpg_post-binary-data-url/

http://www.tek -tips.com / viewthread.cfm? QID = 1281365

Эти ссылки предоставляют пример кода отправки данных формы методом post. К сожалению, я не настроил IIS, поэтому я не мог попробовать эти примеры. На первый взгляд идея может работать.

...