当前位置: 首页 > 面试题库 >

获取提交时的复选框值

勾长卿
2023-03-14
问题内容

我有6个选项,我想获取选中的值以将它们存储在第二页的变量中。我该怎么做呢?

<form action="third.php" method="get">
    <!-- Choices -->
    Red     <input type="checkbox" name="color[]" id="color" value="Red">
    Green   <input type="checkbox" name="color[]" id="color" value="Green">
    Blue    <input type="checkbox" name="color[]" id="color" value="Blue">
    Cyan    <input type="checkbox" name="color[]" id="color" value="Cyan">
    Magenta <input type="checkbox" name="color[]" id="color" value="Magenta">
    Yellow  <input type="checkbox" name="color[]" id="color" value="Yellow">
    Black   <input type="checkbox" name="color[]" id="color" value="Black">
    <!-- Submit -->
    <input type="submit" value="submit">
</form>

third.php页面:

$color = $_GET['color'];

echo 'The color is '.$color;

如果我删除[],我会打开颜色,当我这样做时会color[]收到一条通知,说:

数组到字符串的转换

我想要的是选中复选框的值,因此我可以将其存储在变量中。


问题答案:

我最喜欢的一种好方法,我敢肯定,很多人都会利用foreach它来输出您选择的每种颜色,并在屏幕上彼此下方显示。

在使用复选框时,您别无选择,只能使用foreach,这就是为什么只从数组中返回一个值的原因。

这是使用的示例$_GET。但是$_POST,您可以使用并且需要使两个指令在两个文件中都匹配才能正常工作。

HTML格式

<form action="third.php" method="get">
    Red<input type="checkbox" name="color[]" id="color" value="red">
    Green<input type="checkbox" name="color[]" id="color" value="green">
    Blue<input type="checkbox" name="color[]" id="color" value="blue">
    Cyan<input type="checkbox" name="color[]" id="color" value="cyan">
    Magenta<input type="checkbox" name="color[]" id="color" value="Magenta">
    Yellow<input type="checkbox" name="color[]" id="color" value="yellow">
    Black<input type="checkbox" name="color[]" id="color" value="black">
    <input type="submit" value="submit">
</form>

PHP(使用$ _GET)third.php用作处理程序

<?php

$name = $_GET['color'];

// optional
// echo "You chose the following color(s): <br>";

foreach ($name as $color){ 
    echo $color."<br />";
}

?>

假设选择了红色,绿色,蓝色和青色作为颜色,将显示如下:

红色
绿色
蓝色
青色


选项#2

您还可以检查是否选择了颜色。如果未选择任何内容,则将显示单独的消息。

<?php

$name = $_GET['color'];

if (isset($_GET['color'])) {
    echo "You chose the following color(s): <br>";

    foreach ($name as $color){
        echo $color."<br />";
    }
} else {
    echo "You did not choose a color.";
}

?>

其他选项:

要显示为列表:(<ul></ul>可以替换为<ol></ol>

<?php

$name = $_GET['color'];

if (isset($_GET['color'])) {
    echo "You chose the following color(s): <br>";
    echo "<ul>";
    foreach ($name as $color){
        echo "<li>" .$color."</li>";
    }
    echo "</ul>";
} else {
    echo "You did not choose a color.";
}

?>


 类似资料:
  • 我无法获取“remember-me”复选框值(不存在获取400个必需的布尔参数“remember”) HTML表单

  • 问题内容: 所以我得到的代码看起来像这样: 我只需要Javascript来获取当前选中的任何复选框的值。 编辑 :要添加,将只有一个复选框。 问题答案: 对于现代浏览器 : 通过使用: 没有_以下内容的 _纯javascript :

  • 所以我有这样的代码: 我只需要Javascript来获取当前选中的任何复选框的值。 编辑:要添加,只有一个复选框。

  • 问题内容: 我想获取Flask中复选框的值。我读过一篇类似的文章,并尝试使用和的输出,因为这是我使用的列表,但看来我做错了。这是获取输出的正确方法还是有更好的方法? 问题答案: 你并不需要使用,只是如果只有一个给定名称的输入,尽管它不应该的事。你显示的内容确实有效。这是一个简单的可运行示例: 提交带有两个复选框的表单,然后在终端中打印。请注意,html表单的方法是,post因此数据将位于中。 在某

  • 问题内容: 我正在尝试达到类似于37signals的ta-da列表的效果-我希望我的用户仅通过选中“完成”框即可从列表中检查项目- 换句话说,表单已提交到服务器在复选框上。有谁知道涵盖此类内容的教程,或者可以为我指明正确的方向? 谢谢罗布 问题答案: 如果我正确理解您的问题: 您可以使用jQuery和AJAX完成此操作。在第一个示例中,我无需提交整个表单,而仅提交复选框的值: 大概您会在服务器端处

  • 我无法检索PDFBox中复选框的导出值。我用的是PDFBox v2。0.21. 我需要导出值,因为我需要知道每个复选框字段在另一个应用程序中映射到什么。 复选框具有相同的部分名称,但导出值不同。这里有一个pdf示例。 如果我在字段中调用“getExportValues”,我将获得复选框组[“a”、“b”]的所有可用复选框导出选项。e、 g.是否有方法确定哪个导出值属于当前字段? 如果我调用“get