Ответ 1
Установите для флажков value
атрибут value
значение true
, и вы получите true
в своем значении post.
У меня есть приложение MVC3, использующее Project Awesome (http://awesome.codeplex.com/), но я получаю странное поведение на флажках. У меня есть следующий простой Html внутри модального всплывающего окна <input type="checkbox" class="check-box" name="IsDeleted">
Когда я отправляю форму, содержащую этот элемент, ее значение post 'on' вместо ожидаемого "true" (когда элемент проверен).
Кто-нибудь знает, почему это? Я предполагаю, что может быть какой-то javascript где-то messing с данными формы, но хотел проверить, нет ли какого-то HTML-кода, которого я пропускаю.
Спасибо
Установите для флажков value
атрибут value
значение true
, и вы получите true
в своем значении post.
Этот браузер специфический, я полагаю, что отправить, когда значение undefined. Вам необходимо определить атрибут value
на ваших радио/флажках, чтобы быть уверенным, что будет передано вам. Я бы предложил value="1"
установить data-val="true" and value="true"
deafult...
если флажок установлен, то возвращает true
Конечно, вам нужно просто проверить, установлено ли это значение - значение, которое оно отправляет, не имеет значения, если оно не проверено, тогда ничего не будет отправлено при POST.
В HTML добавьте флажок input = "hidden" выше:
<input name="active" id="activeVal" type="hidden">
<input id="active" type="checkbox">
Затем добавьте script, как показано ниже:
$('#activeVal').val($('#active').is(':checked'));
$('#active').change(function() {
$('#activeVal').val($('#active').is(':checked'));
});
Когда вы делаете, например. $('#your-form').serialize()
в jQuery, вы установите значение флажка, если отмечено active: true
, или снимите флажок active: false
Используйте jQuery для решения кросс-браузера. И все равно оно вернет true или false.
$('#check-box-id').attr('checked' ) == true
если ваш флажок имеет идентификатор check-box. Для вашей текущей версии используйте следующую (выберите по имени класса):
$('.check-box').attr('checked' ) == true
Использовать jQuery
var out=$('.check-box').is('checked')
Если установлен флажок = true else out = false