如何更新元数据箱中的无线电组状态?

时间:2012-12-22 15:14:30

标签: php forms wordpress radio-group meta-boxes

我在WordPress元数据箱中实现了无线电组选项。我在元框中有各自标签的欲望无线电组,但我没有在选择无线电或保存我使用它的帖子时更新我检查的状态。我认为我需要提出一些建议。

<div class="my radio group">
<h2>my radio group </h2>

 <?php

  $cars = array('BMW', 'FERRARI', 'PORSCHE', 'BENTALI', 'MRX', 'CHEVROLET');


 foreach ($cars as $car) {
    echo  '<input name="my-best-car" type="radio"  onchange="javascript:document.post.submit()"';
    $option = 'id=" ' .$car . '"';
    $option = '<value="' . $car . '"';

    if ($car == $my_favorite_car) $option .= "checked";
    $option .= '>';
    $option .= '<label for=" '.$car .' ">' . $car .'  ';

    $option .=  '</label>';
    echo $option;
  }
 ?>
</div>

还添加了WordPress元框保存功能。我的其他选项类型如文字,选择&amp;复选框正确更新。 我尝试使用以下方法更新我的RADIO-GROUP元值:

update_post_meta($post_id, 'my-best-car', $_POST['my-best-car'], true); 

1 个答案:

答案 0 :(得分:1)

好的,我发现你在foreach循环中的错误,你有一个&lt;在值之前的额外值,因此该行看起来像这样:

$option = 'value="' . $car . '"';

此外你的js没有提交表格所以只需在头部添加js函数,例如:

<script>
   function submitOnClick(formName){
       document.forms[formName].submit();
   }
</script>

而不是形式:

onchange="javascript:document.post.submit()"

onclick="submitOnClick(\'myForm\')"

我尝试了它,它只需要相应地重命名您的表单名称