簡體   English   中英

禁用的單選按鈕值丟失,並且傳遞了上一個隱藏的輸入值

[英]Disabled Radio button value lost and last hidden input value is passed

在我正在開發的Wordpress插件中,我正在使用WordPress設置api。 在用於顯示包含單選按鈕的設置的回調中,我啟用它們並根據復選框的值禁用它們。 無論如何,即使它們被禁用,我仍試圖使用隱藏的輸入來存儲它們的值,但是這使情況變得更糟,因為它總是采用最后一個隱藏輸入的值,在我的情況下為“ 4”。

if(get_option( 'display_style' ) == 2){
$disabled = 'disabled';
}
$html = '<input type="radio" id="onecolumn" class="cardchecked" name="card_columns" value="1"' . checked( 1, get_option( 'card_columns' ), false ) . $disabled . '/>';  
$html .= '<input type="hidden" name="card_columns" value="1" />';  
$html .= '<label for="onecolumn">One</label>';  

$html .= '<input type="radio" id="twoclumn" class="cardchecked" name="card_columns" value="2"' . checked( 2, get_option( 'card_columns' ), false ) . $disabled . '/>';  
$html .= '<input type="hidden" name="card_columns" value="2" />';  
$html .= '<label for="twoclumn">Two</label>';  

$html .= '<input type="radio" id="threecolumn" class="cardchecked" name="card_columns" value="3"' . checked( 3, get_option( 'card_columns' ), false ) . $disabled . '/>';  
$html .= '<input type="hidden" name="card_columns" value="3" />';  
$html .= '<label for="threecolumn">Three</label>';  

$html .= '<input type="radio" id="fourcolumn" class="cardchecked" name="card_columns" value="4"' . checked( 4, get_option( 'card_columns' ), false ) . $disabled . '/>';  
$html .= '<input type="hidden" name="card_columns" value="4" />';  
$html .= '<label for="fourcolumn">Four</label>';  
echo $html;

隱藏的輸入name不能與單選輸入的name相同,因為它的值是恆定的,並且將覆蓋任何先前具有相同name輸入的值。

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>';  
...

您將必須使用javascript設置隱藏輸入字段的值。 僅在單選按鈕的頂部放置一個隱藏的輸入將確保如果禁用了單選按鈕,則會提交隱藏的輸入的值,但是如果啟用了單選按鈕,則它們將覆蓋隱藏的輸入的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM