【问题标题】:How can I keep the checkbox checked after I submit a form using PHP?使用 PHP 提交表单后,如何保持复选框处于选中状态?
【发布时间】:2015-02-18 03:43:02
【问题描述】:

我正在尝试从 post 数组中获取一个值,然后将其存储在一个变量中,然后使用该值来保持选中复选框。这是我正在尝试的:

我在 foreach 上方有这一行:

    <input type='checkbox' name='$plyrMtchResult 'value=''>$plyrMtchResult</input>  //This line works fine

 //then when I submit the form the foreach loop runs here.

  foreach($_POST as $value => $key)
        {

                $post_Value= str_replace("_", " ", $value);

                "<input type='checkbox' name='$post_Value' value='post_valuebValue' checked='checked'>$post_valuebValue</input>";

        }

我的问题似乎与我发现的 here 类似,但我的问题不起作用。

提交表单后如何保持复选框处于选中状态。

【问题讨论】:

  • 您是否在页面上某处回显该输入元素?此处的代码示例中缺少某些内容
  • 我很困惑为什么你有那个 foreach 循环。您是否尝试在页面上打印与 $_POST 变量一样多的复选框?此外,通常您的 $value =&gt; $key 是倒退的。当您在 str_replace 中引用 $value 时,您实际上是在引用 $_POST 数组的键
  • 是的,我正在尝试打印与 $_POST 变量一样多的复选框。我将更改 value->key 部分。
  • 我不想回显一个新的复选框标签。我想使用循环上方的代码来操作已经显示的那个。
  • @CloudyKooper 如果它已经被打印出来,你想如何操作它?!还向我们展示您的整个代码,并请多解释一下您的目标是什么

标签: php checkbox


【解决方案1】:
<input type='checkbox' name='$post_Value'     value='post_valuebValue'    checked='checked'>$post_valuebValue</input>

我会做这样的事情,请原谅我在手机上这样做时的任何语法错误

<input type='checkbox' name='$post_Value' value='post_valuebValue' <?pho if ($postvalue = checked){echo 'checked='checked'}?>'>$post_valuebValue</input>";

将已检查的 html 回显到字段中以保持检查

【讨论】:

    【解决方案2】:

    你的代码看起来有点混乱,但如果我理解正确,你需要这样的东西

    &lt;input type='checkbox' name='$plyrMtchResult 'value='' &lt;?php echo (isset($_POST['$plyMtchResult'])?'checked':''); ?&gt; &gt;$plyrMtchResult&lt;/input&gt;

    如果您只想为已存在的复选框元素设置选中值,则无需运行 foreach 循环。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多