значение в скрытом поле в форме без действия генерации - PullRequest
0 голосов
/ 16 марта 2011

Интересно, может ли кто-нибудь помочь мне с этой проблемой:

Если у меня есть три флажка с различными значениями в форме, такой как:

<input type="checkbox" name="checkbox" value="1stValue">
<input type="checkbox" name="checkbox" value="2ndValue">
<input type="checkbox" name="checkbox" value="3rdValue">

И мне нужно было отправить эту форму такчто значения оказываются в скрытом поле, называемом ans, с каждым между ними, так что текстовое поле в одной и той же форме имеет эффект «1stValue, 2ndValue, 3rdValue», содержащиеся в нем, в результате генерирующего действия в форме.1007 * Какой лучший способ сделать это?

Ответы [ 3 ]

1 голос
/ 16 марта 2011

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

Проверьте этот код:

<html>
<head>
<script type="text/javascript">
function setHiddenField()
{
    len = objForm.elements.length;
    var i=0;
    var hiddenValue='';
    for( i=0 ; i<len ; i++)
    {
     if (objForm.elements[i].type=='checkbox' && objForm.elements[i].checked==true) 
        hiddenValue += objForm.elements[i].value+",";
    }
    if(hiddenValue!='')
       hiddenValue = hiddenValue.substr(0,hiddenValue.length-1);

    document.getElementById('hiddenFieldId').value = hiddenValue;
}
</script>
</head>
<body>
<form name="objForm" >
<input type="text" name="checkboxes" id="hiddenFieldId" /><br/>
<input type="checkbox" name="checkbox" value="1stValue"><br/>
<input type="checkbox" name="checkbox" value="2ndValue"><br/>
<input type="checkbox" name="checkbox" value="3rdValue"><br/>
<input type="button" value="Click Me" onclick="setHiddenField()" />
</body>
</html>

Примечание: Я поставил input type = "text", чтобы показать, что значения приходят правильно, измените его на скрытый в вашем реальном коде Также я предполагаю, что вам нужно получить значение каждого флажка в форме

0 голосов
/ 16 марта 2011

Вы можете либо создать несколько скрытых текстовых полей и поставить по одному на каждом, или использовать это:

<input type="checkbox" name="checkbox[]" value="1stValue">
<input type="checkbox" name="checkbox[]" value="2ndValue">
<input type="checkbox" name="checkbox[]" value="3rdValue">

С этим сервером:

<?php
$data=implode(",",$_POST['checkbox']);

echo "<input type='hidden' value='{$data}' name='hiddenField' />";
?>
0 голосов
/ 16 марта 2011

поставить флажки в массиве

<input type="checkbox" name="checkbox[]" value="1stValue">
<input type="checkbox" name="checkbox[]" value="2ndValue">
<input type="checkbox" name="checkbox[]" value="3rdValue">

затем на следующей странице развернем массив

<input type="hidden" name="checkboxes" value="<?php echo implode( ',', $_POST['checkbox'] ) ?>">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...