2016-01-06 34 views
0

我想要做的是禁用/隱藏按鈕,如果這個條件得到滿足
以下是woocommerce網站的代碼。
在php中禁用元素if/else

PHP

foreach(WC()->cart->get_cart() as $cart_item_key => $values) { 
    $_product = $values['data']; 

    if(get_the_ID() == $_product->id) { 
     //*DISABLE BUTTON*// 

    }} 

HTML

<button class="TEST">...</button> 
+1

什麼問題? – Reigel

+0

如果你想隱藏它,你可以使用CSS - 即:'.TEST {display:none; }' - 如果你想禁用,使用'disabled'的三元運算符,它在服務器端。 –

+0

使用javascript關閉它 – kimbarcelona

回答

2

嘗試這樣

$btn='<button class="TEST" '.(get_the_ID() == $_product->id ? "disabled" : "").">...</button>"; 
echo $btn; 
+0

您閱讀[我的評論(?)...](http://stackoverflow.com/questions/34624521/disable-element-in-php-if-else#comment56994836_34624521)我的意思是我的* mind * ;-)是的,serverside的方式去與此。 JS總是可以被用戶禁用。 –

+0

三元總是我最喜歡的:P @ Fred-ii- –

+0

同樣在這裏。嵌套三元組也非常狂野。 –

0

只需添加禁用的按鈕

foreach(WC()->cart->get_cart() as $cart_item_key => $values) { 
    $_product = $values['data']; 

    if(get_the_ID() == $_product->id) { 
     echo '<button class="TEST" disabled>...</button>'; 
    }else{ 
     echo '<button class="TEST">...</button>'; 
    } 
} 
+0

您可能希望在兩個之前添加'echo'以使其更清晰。 – Sheerforce

+0

@Sheerforce感謝那 – momouu

0

更改$_product->id$_product['id']可能會有所幫助,具體取決於您在那裏的對象/數組。

0

MVC應該在你的項目中使用,不與HTML代碼混合PHP。 U可以通過添加樣式隱藏HTML元素的 「顯示:無」

0

試試這個

PHP

foreach(WC()->cart->get_cart() as $cart_item_key => $values) { 
    $_product = $values['data']; 

    $disable = false; 
    if(get_the_ID() == $_product->id) { 
     //*DISABLE BUTTON*// 
     $disable = true 
    }} 

HTML

<button class="TEST" <?php echo $disable? 'disabled' : '' ?>>...</button>