2016-07-29 3 views
1

こんにちは私はモーダルでサインインしてNavBarを構築したいと考えています。私はこの方法で試してみましたが、HTML :: button 'mで試しています。HTML :: aが動作しません。NavBarウィジェットはモーダルでサインインする

それは

Html::button('Create ', ['value' => Url::to(['user/security/login']), 'title' => 'Creating New Company', 'class' => 'btn btn-success','id' =>'modalButton']); ?>
Ajax.js

$(function(){ 
 
\t $('#modalButton').click(function(){ 
 
\t \t \t \t $('#modal').modal('show') 
 
\t \t \t 
 
        .find('#modalContent') 
 
        .load($(this).attr('value')); 
 
     
 
    }); 
 
     
 
});
モーダル

ワーク

コントローラ

public function actionLogin() 
 
    { 
 
     if (!Yii::$app->user->isGuest) { 
 
      $this->goHome(); 
 
     } 
 

 
     /** @var LoginForm $model */ 
 
     $model = Yii::createObject(LoginForm::className()); 
 
     $event = $this->getFormEvent($model); 
 

 
     $this->performAjaxValidation($model); 
 
     $this->trigger(self::EVENT_BEFORE_LOGIN, $event); 
 

 

 
     if ($model->load(Yii::$app->getRequest()->post()) && $model->login()) { 
 
      $this->trigger(self::EVENT_AFTER_LOGIN, $event); 
 
      return $this->goBack(); 
 
     }else { 
 

 
     return $this->renderAjax('login', [ 
 
      'model' => $model, 
 
      'module' => $this->module, 
 
     ]); 
 
    } 
 
}
私は

Nav::widget([ 
 
     'options' => ['class' => 'navbar-nav navbar-right'], 
 
     'encodeLabels' => false, 
 
     'items' => [ 
 
      ['label' => 'Home', 'url' => ['/site/index']],  
 
\t \t 
 
      Yii::$app->user->isGuest ? (
 
\t \t \t echo Html::a('<span class="glyphicon glyphicon-user" aria-hidden="true"></span>Sign in</span>', 
 
['#'], 
 
['id' => 'modalButton', 
 
'class' => 'linkbutton', 
 
'data-toggle'=>'modal', 
 
'data-tooltip'=>'true', 
 
'title'=> 'Votes']);
を行いたいと思います

しかし

**を動作しません。あなたは私を助けることができますか? **

+0

? –

答えて

0

アンカータグは不要です。ラベル自体を使用してアンカータグを作成する必要はありません。

echo Nav::widget([ 
    'options' => ['class' => 'navbar-nav navbar-right'], 
    'encodeLabels' => false, 
    . 
    . 
    . 
    . 
    ['label' => '<span class="glyphicon glyphicon-user" aria-hidden="true"></span> Sign in', 'url' => ['/user/security/login'],'options' => ['id' => 'modalButton']] : 
    . 
    . 
    ]); 

JS

$this->registerJs(
    "$(function() { 
     $('#modalButton a').click(function(e) { 
     e.preventDefault(); 
     $('#modalLarge').modal('show') 
     .find('.modal-content') 
     .load($(this).attr('href')); 
     }); 
    });", 
yii\web\View::POS_END, 'login-modal'); 

モーダル** URL **は、アンカータグである

yii\bootstrap\Modal::begin(['id'=>'modalLarge', 'size' => 'modal-lg']); 
yii\bootstrap\Modal::end(); 
+0

ありがとうございますが、私はリンクされたページで私がかかるajaxモーダルで呼び出されていないこのメソッドの別の問題があります。私はJSモーダルを請求しません – Saba

+0

@サバはあなたを得ませんでした。 –

+0

JSが書いたことを傷つけてすみません、すごくうれしく思います – Saba

関連する問題