繁体   English   中英

表单中隐藏字段中的值,而不产生操作

[英]value in hidden field in form without generating action

想知道是否有人可以帮助我解决这个问题:

如果我在表单上有三个具有不同值的复选框:

<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',并生成在表单上的动作。

哪种方法最好?

我认为您需要一个函数,用于在提交表单之前将逗号分隔的值放入隐藏字段中。

检查此代码:

<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>

注意:我已经输入type =“ text”来显示值正确,将其更改为隐藏在您的实际代码中。另外,我假设您需要获取表单中每个复选框的值

将复选框放入数组

<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'] ) ?>">

您可以创建多个隐藏的文本框并在每个文本框上放置一个,或使用以下方法:

<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' />";
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM