This - это моя скрипка для выбора из 3. Я хочу, чтобы значение выбранного флажка было on
, а значение unchecked - значение off
. Я пишу значение по умолчанию off
и попытался изменить значение отмеченного на on
. Любое предложение ценитсяотметьте галочкой флажок и установите флажок в поле «на» jQuery
ответ
Проблема заключается в том if ($("input[name='resolution[]']:checked")) {
, $("input[name='resolution[]']:checked")
возвращает объект JQuery, который будет содержать все выбранные флажки с именем resolution[]
Вам нужно
$('#res').click(function() {
var resolutiontemp = {};
var resolution = [];
$("input[name='resolution[]']").each(function() {
this.value = this.checked ? 'on' : 'off';
var resolution = $(this).parent().find('span').text();
resolutiontemp[resolution] = this.value;
})
resolution.push(resolutiontemp);
console.log(JSON.stringify(resolution));
});
Демо: Fiddle
У меня только один вопрос, почему условие 'if' возвращает статус первого элемента, если у меня есть это в' 'каждом' funtion? просто интересно, поэтому я не буду совершать такую же ошибку. –
@HogRider см. обновление ... в каждом цикле вам нужно использовать 'this', чтобы ссылаться на текущий элемент –
@HogRider http://jsfiddle.net/arunpjohny/qoa94hng/4/ –
Использование ниже фрагмента кода для достижения ожидаемого результата.
HTML
<table>
<tr>
<td>
<input type="checkbox" id="res1" name="resolution[]" class="resolution" value="off"/><span>res 1 </span>
</td>
<td>
<input type="checkbox" id="res2" name="resolution[]" class="resolution" value="off"/><span>res 2</span>
</td>
<td>
<input type="checkbox" id="res3" name="resolution[]" class="resolution" value="off"/><span>res 3</span>
</td>
</tr>
<tr>
<td colspan="3"><input type="checkbox" id="selecctall" name=""/><span>Select All</span></td>
</tr>
</table>
JQuery:
$('#selectall').click(function(event) { //on click
var resolutiontemp = {},resolution = [];
if(this.checked) {
$("input[name='resolution[]'").each(function() {
this.checked = true;
$(this).prop('value','on');
var resolutionval = $(this).val();
var resolution = $(this).parent().find('span').text();
resolutiontemp[resolution] = resolutionval;
});
}else{
$("input[name='resolution[]'").each(function() {
this.checked = false;
$(this).prop('value','off');
var resolutionval = $(this).val();
var resolution = $(this).parent().find('span').text();
resolutiontemp[resolution] = resolutionval;
});
}
resolution.push(resolutiontemp);
console.log(JSON.stringify(resolution));
});
- 1. Отметьте галочкой флажок = listviewitem row
- 2. Установите флажок в jquery
- 3. Установите флажок в поле флажок или нет с помощью jquery
- 4. Установите флажок в jQuery?
- 5. jQuery: отметьте, установлен ли флажок.
- 6. Скрыть текстовое поле, если флажок снят галочкой
- 7. В html отметьте один флажок с 2 флажок без JQuery
- 8. Установите флажок, используя jQuery?
- 9. Установите флажок и снимите флажок со счета
- 10. Установите флажок в поле (и снимите выделение) и укажите поле ввода, если флажок установлен.
- 11. Как скрыть div, отметьте флажок
- 12. Отметьте флажок, только если он не выбран
- 13. WPF. Отметьте и отключите флажок, если установлен другой флажок.
- 14. Когда кнопка нажата, установите флажок Поповер-Bootstrap и установите флажок?
- 15. Установите флажок в поле ввода, используя javascript
- 16. Установите флажок и добавьте текст
- 17. Установите флажок в поле флажка xsl umbraco
- 18. Установите и снимите флажок с помощью jquery
- 19. Установите флажок в поле Не отмечен
- 20. Установите флажок в поле флажка сетки
- 21. Установите флажок флажка в пользовательском мета-поле
- 22. JQuery найти флажок и установите/снимите его
- 23. установите флажок на родительских элементах.
- 24. Отметьте, у кого установлен флажок
- 25. Если флажок установлен, отметьте значение
- 26. Флажок не обновляется галочкой из mysql
- 27. Установите флажок в таблице
- 28. Установите флажок и добавьте его в текстовое поле с запятыми
- 29. отметьте пружинный флажок как readOnly
- 30. Установите флажок, чтобы проверить все, настраиваемый флажок
В будущем просьба включить соответствующий код в вопросе самостоятельно, или еще лучше использовать функцию фрагмент кода StackOverflow в , кнопку '<>' в редакторе. –