单选按钮值在文本框中未定义

时间:2013-10-23 06:22:49

标签: php radio-button

我尝试使用弹出窗口和功能将单选按钮值存储在另一个页面中 但是当我提交无线电值时,我在文本字段中收到未定义的错误。

 <script langauge="javascript">
 function post_value() {
     opener.document.f1.OPRID.value = document.frm.OPRID.value;
     self.close();
 }
 <input type="radio" name="OPRID" id="radio" value=<?=$objResult["OPRID"];?>>
 <input type="button" value='Submit' onclick="post_value();"> 

和其他页面文本字段

 <form method="post" action='' name='f1'>
 <table border=0  width=550> <tr>
 <td>Your Name</font><input id="OPRID" name="OPRID" type="text" value="<?php echo (isset($_POST 
  ['OPRID']) ? $_POST['OPRID'] : ""); ?>"/> 
   <a href="javascript:void(0);"
  NAME="My Window Name" title=" My title here "
    onClick=window.open       

 ("popwindow.php","Ratting","width=650,height=550,0,status=0,scrollbars=1");>
 Click here to open the child window</a> 

   </td></tr> </table></form>     

但在文本字段中我收到了未定义的错误。

4 个答案:

答案 0 :(得分:0)

对于复选框,如果仅选中复选框,则php传递值。所以你可以检查是否收到了PHP页面的复选框。如果收到的用户已选择它或未选择用户,则不会将复选框名称传递给PHP页面。

所以你可以检查

如果(isset($ _ POST [ “CHK”]))

...如果返回true,则表示用户选中了复选框,如果没有选择用户...

答案 1 :(得分:0)

复选框只有在选中后才会传递。您可以使用isset检查它们是否已设置,或者在复选框之前添加一个隐藏字段,该字段具有相同的名称和默认值(如果选中该复选框,将被复选框覆盖)。

答案 2 :(得分:0)

我无法看到你在哪里使用单选按钮。如果一切顺利,请尝试在另一页上打印所有发布数据,以了解控件的值是否已通过。 的print_r($ _ POST) 你应该看到无线电控制名称是POST数组的关键。 在第一页上说你有&lt; input type =“radio”name =“radio1”value =“this is value”/&gt;

然后print_r($ _ POST)的结果应该是Array =&gt;(“radio1”=&gt;“这是值”)

以$ _POST [“radio1”]

的形式访问其值

答案 3 :(得分:0)

您的代码有一些错误/问题:

  • 删除JavaScript,这是不必要的。
  • 要将内容提交到其他页面(使用$_POST / $_GET),请使用<form>
  • 保持代码可读;尝试缩进并使用元素的新行

让你的代码看起来像这样:

主页

<form method="POST" action="otherpage.php">
    <input type="radio" name="OPRID" id="radio" value="<?php echo $objResult["OPRID"];?>" />
    <input type="button" value="Submit" />
</form>

然后,当按下提交按钮时,表单会提交给otherpage.php,因此$_POST['OPRID']有一个值:

otherpage.php

<form method="post" action="" name="f1">
    <table border=0 width=550>
        <tr>
            <td>
                Your Name
                <input id="OPRID" name="OPRID" type="text" value="<?php echo (isset($_POST['OPRID']) ? $_POST['OPRID'] : ""); ?>" /> 
                <a href="javascript:void(0);" name="My Window Name" title=" My title here " onClick="window.open('popwindow.php','Ratting','width=650,height=550,0,status=0,scrollbars=1');" />
                    Click here to open the child window
                </a>
            </td>
        </tr>
    </table>
</form>

部分value="<?php echo (isset($_POST['OPRID']) ? $_POST['OPRID'] : ""); ?>"表示:

  • value="..." - 在文本框中放置一些文字
  • <?php ... ?> - 执行一段PHP代码
  • echo ... - 打印一些文字
  • (isset($_POST['OPRID']) ? $_POST['OPRID'] : ""); - 如果$_POST包含OPRID的值,则(?)使用该值,否则(:)不使用任何内容({{ 1}})