Это, наверное, глупо простой вопрос, но я застрял.
Я создал форму с несколькими флажками, и при щелчке по флажкам значения каждого флажка передавались в виде списка через запятую в скрытое поле ввода. Это сработало. но из-за некоторых проблем я теперь должен изменить свой код, чтобы вместо него использовались переключатели - чтобы не было списка значений, разделенных запятыми, только по одному за раз.
Я изменил код, чтобы заменить его на радио-кнопки, и он работает нормально за исключением для двух вещей: 1) он не переключается между радио-кнопками (каждый раз, когда я выбираю кнопку, он остается выбранным как Я выбираю другие) и 2) он добавляет в список вместо того, чтобы возвращать один выбранный вариант. Другими словами, он все еще действует как флажок, за исключением того, что визуально он круглый и имеет точку. LOL
Это мой код:
jQuery(document).ready(function($) {
$(':radio').click(function() {
var radio = $(this);
var text = $('input[name="cat"]');
if(radio.is(':checked')) {
text.val(text.val() + radio.val());
//alert(text.val());
} else {
text.val(function() {
$(this).val().replace(radio.val(),"");
});
}
});
});
поэтому, когда я раскомментирую эту строку «оповещения», я вижу, что было пропущено, и она просто добавляет в список вместо того, чтобы заменить новым значением. Кто-нибудь знает, как исправить вышеперечисленное, чтобы можно было выбрать и пропустить только параметр one ? (Вышеупомянутый код работает потрясающе как флажок. Хотя на самом деле я думаю, что где-то получил вышеупомянутый код, хотя не могу вспомнить где!)
РЕДАКТИРОВАТЬ: вот код, который решает проблему и работает угощение (спасибо вам всем :)) - возможно, это поможет кому-то еще в будущем.
`jQuery(document).ready(function($) {
$(':radio').change(function() {
var radio = $(this);
var text = $('input[name="cat"]');
if(radio.is(':checked')) {
text.val(radio.val());
//alert(text.val());
} else {
text.val(function() {
$(this).val().replace(radio.val(),"");
});
}
});
});`