簡體   English   中英

如何禁用 Yii2 中的按鈕

[英]How to Disable a button in Yii2

我試圖在用戶未登錄時禁用“創建項目” Button ,該按鈕將Hidedisable

這是我的條件:

<p>
    <?php
    if (Yii::$app->user->isGuest) {
        Html::a('Create a Project', ['create'], ['class' => 'btn btn-primary btn-xs']);
    } elseif(Yii::$app->user->identity->username) {
        Html::a('Create a Project', ['create'], ['class' => 'btn btn-success']);
    }
    ?>
</p>

它正在工作,但是,當用戶登錄時,按鈕已經隱藏了!

如何禁用或隱藏 Yii2 中的按鈕並解決該問題?

有沒有關於那個的教程?

你需要添加一個disabled屬性來禁用按鈕,或者完全隱藏它你可以使用 CSS style=display: none;

兩者都在下面的代碼中使用

<p>
    <?php
        if (Yii::$app->user->isGuest) {
            // This button will be displayed, but is disabled 
            Html::a('Create a Project', ['create'], ['class' => 'btn btn-primary btn-xs', 'disabled' => 'disabled']);
        } elseif(Yii::$app->user->identity->username) {
            Html::a('Create a Project', ['create'], ['class' => 'btn btn-success']);
        } else {
            // This button will not be displayed (it is hidden)
            Html::a('Create a Project', ['create'], ['class' => 'btn btn-primary btn-xs', 'style' => 'display: none;']);
        }
    ?>
</p>

首先,你不能禁用a標簽。 disabled屬性在Button標簽上工作正常,例如:

<?= Html::Button('Project', ['class' => 'btn btn-success', 'disabled' => Yii::$app->user->isGuest ]) ?>

如果你真的想禁用a標簽,那么你可以使用這個例子:

HTML:

<a id="a1" href="http://www.google.com">Google 1</a>

Javascript:

$('#a1').attr('disabled', 'disabled');

$('a').on('click', function(e) {
    if ($(this).attr('disabled') == 'disabled') {
        e.preventDefault();
    }
});

如果您只是檢查logged用戶,那么使用!Yii::$app->user->isGuest並且您忘記echo

if (!Yii::$app->user->isGuest) {
        echo Html::a('Create a Project', ['create'], ['class' => 'btn btn-primary btn-xs'])
} 

試試這個代碼:

<?= Html::a('Create a Project', ['create'],['class' =>'btn btn-primary disabled']); ?>

暫無
暫無

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

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