2016-07-06 3 views
-1

Я делаю форму с флажками и радиообменами Я использую значение как цену, которую я вычисляю со сценарием, чтобы получить общую цену выбранных флажков и радиокнопков.PHP получение данных формы с использованием атрибута id

<script> 
function calcscore() { 
    score = 0; 
    $(".calc:checked").each(function() { 
     score += Number($(this).val()); 
    }); 
    $("#price").text(score.toFixed(2)); 
    $("#sum").val(score) 
} 
$().ready(function() { 
    $(".calc").change(function() { 
     calcscore() 
    }); 
}); 
</script> 

<input type="radio" id="1" value="40" class= "calc" name = "780143050"> Gezichtsbehandeling (incl.)<br> 
<input type="radio" id="2" value="40" class = "calc" name = "780143050"> Massage<br> 
<input type="radio" id="3" value="75" class = "calc" name = "780143050"> beide 
<span id="output"></span><input type="hidden" name="sum" id="sum" value="0"> 
       <p>Totaal extra's : € <span id="price">0</span> 

У меня есть следующий PHP

test.php

<?php 
    echo("keuze : " . $_POST['780143050'] . "<br />\n"); 
?> 

Я в моем PHP скрипт значение и идентификатор. Как я могу повторить идентификатор выбранного радиообмена?

+0

вы заполните эту форму? –

+0

да, это фрагмент кода, который я получаю все значения, но я не получаю значения ID – Richard

+1

'значение' - это поле. –

ответ

1

Есть 2 способа сделать это:

  1. изменить значение value к значению id
  2. добавить значение id к value

HTML:

<input type="radio" id="2" value="40|2" class = "calc" name = "780143050"> Massage<br> 

ЯШ:

<script> 
function calcscore() { 
    score = 0; 
    $(".calc:checked").each(function() { 
     score += Number($(this).val().split('|')[0]); 
    }); 
    $("#price").text(score.toFixed(2)); 
    $("#sum").val(score) 
} 
$().ready(function() { 
    $(".calc").change(function() { 
     calcscore() 
    }); 
}); 

PHP

<?php 
    echo("keuze : " . split('|',$_POST['780143050'])[1] . "<br />\n"); 
?> 
+1

ОК, этот работает отлично, спасибо за эту идею и исправьте – Richard

0

См. Ниже код. Выбранная кнопка радио ID будет получено в качестве $_POST['selID']:

$('form').submit(function(){ 
 
    var selID = $('form input[type=radio]:selected').attr('id'); 
 
    $(this).append('<input type="hidden" name="selID" value="'+selID+'" />'); 
 
});

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