0

我尝试将复选框值与文本字段组合到一个变量中,这样当我回显它时,它会显示正确的字段值。

我想将复选框的帖子与数量文本字段的帖子结合起来,因为有几个项目我正在使用 forloop 但似乎无法将两个值合并为一个,以便它使用该项目创建一个新的表格行左边是名称,右边是数量。

<tr>
   <td>
      <input type="checkbox" name="check[]" value="<?php echo get_post_meta($post->ID, '_stitle', true); ?>" />
   </td>

   <td>
      <input id="quantity" name="check[quantity]" type="text" maxlength="3" /><br />
   </td>

  $data = $_POST['check'];
        foreach ($data as $value) {
        $item .= '<tr style="background: #eee;">
                <td>Item: </td>
                <td>'.$value.'</td>
            </tr>';
        }
4

1 回答 1

1

你可能应该改变:

<input id="quantity" name="check[quantity]" type="text" maxlength="3" /><br />

至:

<input id="quantity" name="check[quantity][]" type="text" maxlength="3" /><br />

您标量您的复选框,但不是文本字段。

此外,将您的两个字段与 for 相关联可能会更简单,因为每个复选框和输入字段之间的数组键将是相同的。

例子:

for($i=0;$i<=sizeof($_POST['check'])-2;$i++){
    $item .= '<tr style="background: #eee;">
            <td>Item: '.$_POST['check'][$i].'</td>
            <td>'.$_POST['check']['quantity'][$i].'</td>
        </tr>';
}

另外,请注意 sizeof $_POST 中的 -2。你必须减去你的数量键和你的偏移量来设置你的结束点等于那个,因为你从 0 开始计数。

于 2012-06-08T18:23:18.333 回答