2015-05-16 65 views
0

問題:我正在使用Jquery顯示/隱藏div dropdown更改我的應用程序,當我創建新窗體時它的工作更好,但是當我更新它時,窗體變成了正常的視圖,我沒有看到我應該查看的窗體,所以這讓我再次更改下拉選項來查看我設置顯示的字段。jquery顯示隱藏div下拉更改無法正常工作更新

我的JQuery:

<?php 

$this->registerJs(' 
$(document).ready(function(){ 
    $(\'.ordinary\').hide(); 
    $(\'.special\').hide();   
$(\'#company-typeofcompany\').change(function() { 
    var x = $(this).val(); 
    if (x === "ordinary") { 
     $(\'.ordinary\').show(); 
     $(\'.special\').hide(); 
    } 
    else 
    { 
     $(\'.special\').show(); 
     $(\'.ordinary\').hide(); 
    } 
}); 

});', \yii\web\View::POS_READY); 

?> 
+0

如果代碼是固定的,而不是使用yii2的工具註冊,您可以將它添加到本地代碼到您的html代碼下面的頁面中,並查看事件錯誤。這可能有助於解決問題發生 – Shaggie

+0

我diidn't得到任何錯誤 –

+0

一旦我改變了下拉和選擇,我需要查看顯示div總是 –

回答

0

我猜更新你必須檢查下拉值的條件,如果是普通的,你必須表現出正常的和隱藏的另一種價值的特殊,反之亦然。代碼可能是

$(document).ready(function(){ 
    $('.ordinary').hide(); 
    $('.special').hide(); 
    if ($('#company-typeofcompany').val() == "ordinary") { 
     $('.ordinary').show(); 
     $('.special').hide(); 
    } else { 
     $('.special').show(); 
     $('.ordinary').hide(); 
    } 
    $('#company-typeofcompany').change(function() { 
     var x = $(this).val(); 
     if (x === "ordinary") { 
      $('.ordinary').show(); 
      $('.special').hide(); 
     } else { 
      $('.special').show(); 
      $('.ordinary').hide(); 
     } 
    }); 
}); 
+0

特別沒有得到隱藏它總是顯示 –

+0

然後你的下拉將具有普通的預選,改變如果($('#company-typeofcompany').val()==「special」){ 和 if($('#company-typeofcompany').val()==「ordinary」){ 也顯示我console.log($('#company-typeofcompany')。val()) –

+0

如果我將其更改爲特殊的,現在普通不隱藏,它總是顯示 –

相關問題