3

我有两页,在第一页中我提交了包含单选按钮的表单。

从第二页开始,我尝试使用 $_POST 读取单选按钮的响应。

问题是当我点击提交时,第二页中的 $_POST 显示为 NULL。但是,当我没有禁用第一页中的单选按钮时,第二页的 $_POST 表单会正确读取单选按钮中的数据。

有什么解决方案可以让 $_POST 读取禁用单选按钮的值吗?

当用户单击它时,我正在使用此 Javascript 代码禁用单选按钮:

function disableRadio(groupName){
        var radio=document.getElementsByName(groupName);
        for(c=0;c<radio.length;c++)
            radio[c].disabled=true;
}

这是两个页面中的每个页面的简单代码。

第 1 页:

echo '<form action="Page2.php" method="post">',
     "<input type='radio' name='Question1' value='1' onClick='disableRadio(Question1)' />",
     "<input type='radio' name='Question1' value='2' onClick='disableRadio(Question1)' />",
     "<input type='radio' name='Question1' value='3' onClick='disableRadio(Question1)' />",
     "<div><input type='submit' value='Submit'></div>",
     "</form>";

第2页:

$response=$_POST['Question1'];
echo $response;

更新到这个问题

使用 ReadOnly 属性时,组中的单选按钮仍然可以单击。所以,我决定禁用其他单选按钮。有没有更好的解决方案,因为我不希望用户觉得他能够改变答案。

4

5 回答 5

4

禁用的输入不提交它们的值。

readonly如果这种行为适合您的情况,您可以将它们设置为。

于 2012-07-25T21:13:52.180 回答
2

问:在我按下“关闭”按钮后,有什么方法可以让我的手机发出声音?

A:不,尝试点击“静音” :)

“禁用”(此输入已关闭)和“只读”(有值,但用户无法篡改)之间存在差异:

'希望有帮助.. PSM

于 2012-07-25T21:16:07.233 回答
1

您可以设置一个隐藏值以使用单选按钮的代理,并根据单选按钮的状态设置它,这样您仍然可以禁用单选按钮并始终拥有您想要的值。

于 2012-07-25T21:14:52.670 回答
0

您应该在输入元素上使用readonly而不是。disabled

于 2012-07-25T21:14:13.170 回答
0

您可能最好使用<input type="hidden">,如果您确实需要用户查看他们之前提交的内容,那么您可以添加一组没有名称的禁用单选按钮来显示它。

于 2012-07-25T21:15:17.793 回答