Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 禁用的单选按钮值丢失,并传递最后一个隐藏的输入值_Php_Html_Wordpress - Fatal编程技术网

Php 禁用的单选按钮值丢失,并传递最后一个隐藏的输入值

Php 禁用的单选按钮值丢失,并传递最后一个隐藏的输入值,php,html,wordpress,Php,Html,Wordpress,在我正在开发的Wordpress插件中,我使用的是Wordpress设置api。在我用来显示包含单选按钮的设置的回调中,我根据复选框值启用和禁用它们。无论如何,我试图使用一个隐藏的输入来存储它们的值,即使它们被禁用,但这使情况变得更糟,因为它总是取最后一个隐藏输入的值,在我的例子中是“4” if(获取选项('display\u style')==2){ $disabled='disabled'; } $html=''; $html.=''; $html.='One'; $html.=''; $h

在我正在开发的Wordpress插件中,我使用的是Wordpress设置api。在我用来显示包含单选按钮的设置的回调中,我根据复选框值启用和禁用它们。无论如何,我试图使用一个隐藏的输入来存储它们的值,即使它们被禁用,但这使情况变得更糟,因为它总是取最后一个隐藏输入的值,在我的例子中是“4”

if(获取选项('display\u style')==2){
$disabled='disabled';
}
$html='';
$html.='';
$html.='One';
$html.='';
$html.='';
$html.='Two';
$html.='';
$html.='';
$html.='3';
$html.='';
$html.='';
$html.='Four';
echo$html;

隐藏输入的
名称
不能与无线电输入的
名称
相同,因为它的值是常量,将覆盖具有相同
名称
的任何先前输入的值

if(get_option( 'display_style' ) == 2){
$disabled = 'disabled';
}
$html .= '<input type="hidden" name="card_columns" value="1" />'; 
$html = '<input type="radio" id="onecolumn" class="cardchecked" name="card_columns" value="1"' . checked( 1, get_option( 'card_columns' ), false ) . $disabled . '/>';    
$html .= '<label for="onecolumn">One</label>';  
...
if(获取选项('display\u style')==2){
$disabled='disabled';
}
$html.='';
$html='';
$html.='One';
...
您必须使用javascript设置隐藏输入字段的值。
将一个隐藏输入放在单选按钮的顶部可以确保,如果单选按钮被禁用,隐藏输入的值将被提交,但是如果单选按钮被启用,它们将覆盖隐藏输入的值。

当您变量转储get_选项(“卡_列”)的值时会发生什么?它返回字符串(1)“4”是的,所以我将编写一些Jquery代码,允许我根据所选单选按钮更改隐藏输入的值。谢谢
if(get_option( 'display_style' ) == 2){
$disabled = 'disabled';
}
$html .= '<input type="hidden" name="card_columns" value="1" />'; 
$html = '<input type="radio" id="onecolumn" class="cardchecked" name="card_columns" value="1"' . checked( 1, get_option( 'card_columns' ), false ) . $disabled . '/>';    
$html .= '<label for="onecolumn">One</label>';  
...