2015-12-01 3 views
-3

Я использую JavaScript для получения значений из радиоокна, чтобы вставить его в базу данных в виде строки. Мне нужно, чтобы у меня было более двух радиобоксов. Как я могу использовать Javascript для добавления значений в мою базу данных?Как получить значение многих выбранных переключателей

Вот мой код:

<td> 
    <input type="radio" name="company_grp" class="largerCheckbox" value='Sentinel' checked="checked"> 
    Sentinel GM 
</td> 
<td> 
    <input type="radio" name="company_grp" class="largerCheckbox" value='GuardTrack'> 
    GuardTrack 
</td> 
<td> 
    <input type="radio" name="company_grp" class="largerCheckbox" value='GuardingProduct'> 
    Guarding Product 
</td> 
if (!document.frmAdd_Visit.company_grp[0].checked && !document.frmAdd_Visit.company_grp[1].checked && !document.frmAdd_Visit.company_grp[2].checked) { 
    alert("Please Select the company group does this client belong's to!"); 
    form.company_grp.focus(); 
    return false; 
} 

Это очень сложно, но я не получаю правильное значение. Когда я выбираю 3-ю радиостанцию, она не добавляется в базу данных, а вместо этого перезагружает страницу.

+0

У вас есть два вопроса. Чтобы получить значение флажков в вашем HTML, используйте '$ ('input [name = company_grp]: checked'). Val();'. Чтобы поместить значение в свою базу данных, вам необходимо отправить форму (или использовать AJAX), а затем обновить хранилище данных на серверном коде. –

+0

Спасибо за помощь. Но я не использую флажок, кроме Radiobox. Я хотел бы сохранить тот же формат, но когда я использую 2 radioBox, javascript работает хорошо. Но если я хочу использовать 3 или несколько радиооблоков, JavaScript не работает. Это то, что я прошу. ex: 'if (! document.frmAdd_Visit.company_grp [0] .checked &&! document.frmAdd_Visit.company_grp [1] .checked' Works, но' if (! document.frmAdd_Visit.company_grp [0] .checked &&! document.frmAdd_Visit .company_grp [1] .checked &&! document.frmAdd_Visit.company_grp [2] .checked) {'Не работает. Почему? Что мне нужно делать? –

+0

' Но я не использую флажок, но Radiobox вместо этого я знаю - это не влияет на то, что я предложил. Из вашего второго комментария это звучит так, будто вы просто хотите определить, когда было выбрано радио * no *, правильно? –

ответ

1

вы можете использовать JQuery для получения формы стоимости RADIO коробка

$(document).ready(function(){ 
    $('input[name="company_grp"]:checked').val(); 
}); 
0

код JQuery ниже возвращает значение:

$('input[name=company_grp]:checked').val() 
+0

Спасибо, что попробовали парней, но все равно не вернули никаких действий! перезагрузка страницы без добавления третьего RadioBox. проверьте мой код HTML. –

+0

Да, потому что вы «возвращаете ложь» ... @MichealP. – Lino

0

может использовать тип радио проверяется, как $ (': радио: проверено')

var selectedvalue; 
if($(':radio:checked').length > 0){ 
    $(':radio:checked').each(function (i) { 
      selectedvalue = $(this).val(); 
     }); 
} 
console.log(selectedvalue); 
+0

Привет, Дэвид. Возможно ли, чтобы вы придерживались того же формата, который я использую для своих JS и Edit оттуда? Спасибо –

+0

Да, вы можете придерживаться того, где происходит действие базы данных, и будет динамически менять выбранное вами значение радио. @ MichealP –

-2

Здесь я нашел и это хорошо работает для меня.

function test_company_grp() { 
    var radios = document.getElementsByName("company_grp"); 
    var found = 1; 
    for (var i = 0; i < radios.length; i++) {  
     if (radios[i].checked) { 
      alert(radios[i].value); 
      found = 0; 
      break; 
     } 
    } 
    if(found == 1) 
    { 
    alert("Please Select the company group does this client belong's to!"); 
    }  
} 
Смежные вопросы