$ ('input [name = nameofinput]: checked'). Значение val() undefined

2016-05-24 4 views
-1

Я пытаюсь отправить значение ввода на другую страницу.

$(this).attr("href", '?module=module_progress_report&Subject='+ $('input[name=subject]:checked').val()+ '&Centre_Selected_ID='+ encodeURIComponent($(this).attr('data-centre')) + '&Class_Selected_Year='+ encodeURIComponent($(this).attr('data-year')) + '&Class_Selected_All='+ encodeURIComponent($(this).attr('data-all-centre')) +'&StartDate='+$('#report_date_start').val()+'&EndDate=18/12/2016'); 

Здесь

$('input[name=subject]:checked').val() 

всегда возвращает неопределенное значение. Значение не выбирается. Если я выберу один из вариантов по умолчанию, тогда его значение будет сохранено. Что мне нужно сделать?

Благодаря

EDIT: Вот PHP и HTML:

<form class="small-box-footer" style="text-align:left;padding:10px;" method="post" name="nameHere"> 

           <?php 
           $query = "SELECT * FROM subject"; 
          //$query="SELECT * FROM $base_name"; 
          $result = mysql_query($query); 
          while ($row39 = mysql_fetch_array($result)) { 
           $Referrer_ID = $row39['Subject_ID']; 
           $Referrer_Name = $row39['Subject_Name'];  
           ?> 

<input type="checkbox" class="subject-selected" name="subject" value="<?=$Referrer_ID?>"> <?=$Referrer_Name?><?=$Referrer_ID?><br /> 

<?php } ?> 

</form>  

Ниже HTML:

<input type="checkbox" class="subject-selected" name="subject" value="2"> GCSE Maths2<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="GCSE English" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="3"> GCSE English3<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="GCSE Science" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="4"> GCSE Science4<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="GCSE Art" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="5"> GCSE Art5<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="GCSE Sociology" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="6"> GCSE Sociology6<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="OCR Nationals ICT" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="8"> OCR Nationals ICT8<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="OCR Nationals Sports" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="9"> OCR Nationals Sports9<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="OCR Nationals Business Studies" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="10"> OCR Nationals Business Studies10<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="Entry Science" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="11"> Entry Science11<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="Functional Skills English" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="12"> Functional Skills English12<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="Functional Skills Maths" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="13"> Functional Skills Maths13<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="ESOL" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="14"> ESOL14<br /> 

                 <!--<a href="#" class="small-box-footer" data-id="<?php=$Referrer_Name?>" data-subject="Preparation for Working Life" data-report-range="month"> 
             <i class="fa fa-arrow-circle-right"></i> 
            </a> 
            --> 
           <input type="checkbox" class="subject-selected" name="subject" value="15"> Preparation for Working Life15<br /> 
+2

Покажите свой HTML? – Azim

+0

Что именно возвращает 'undefined' – Rayon

+0

Может быть' [name = "subject"] 'зависит от' jQuery' версии ... – Rayon

ответ

0

Вам нужно заменить checked с selected:

$('input[name=subject]:selected').val() 
+0

зависит от того, является ли это '', и в этом случае ': checked' правильный – Rhumborl

-1
Syntax: $("input[value='name']") 
try this 
$('input[name="subject"]:checked').val() 
+1

Downvoted, потому что это не имеет значения, оба синтаксиса в порядке. – meskobalazs

+0

@meskobalazs, зависит от 'jQ' версии .. – Rayon

+0

@ Возможно, возможно, но поскольку это, похоже, не изменилось с версии 1.0, я думаю, что это маловероятно. Одеяло «зависит от версии jQ» ответ на все не особенно полезно – Rhumborl

1

попытайтесь запустить тот же код $('input[name=subject]:checked').val() на консоли и посмотреть, что он дает.

для :checked # убедитесь, что вы элемент ввода с типом checkbox

вы также можете использовать это:

$('input[name="input_name"]').is('checked'); // will return true/false 
+0

Я попытался использовать это, если '($ ('input.checkbox_check'). Is (': checked')) \t \t \t alert ($ ('input [name = subject]: checked'). Val()); 'но это никогда не запускалось. –

+0

@FahadUddin - Есть ли ошибки в консоли браузера? –

+0

Также я думаю, что он должен быть $ ('input.subject-selected'). Is (': checked') –

Смежные вопросы