2016-06-20 22 views
-2

我有一個複選框,當它被選中時,我想顯示公司名稱的輸入並設置所需的輸入。複選框上的jquery事件發生了變化,我無法刪除類

<div class="col-lg-6 col-md-6 col-sm-6 col-xs-12"> 
    <label>Company Profile</label> 
    <input id="CompanyProfile" name="CompanyProfile" type="checkbox" data-toggle="toggle" data-on="YES" data-off="NO" data-onstyle="success" data-offstyle="danger" value="1"> 
</div> 
<div id="divCompanyName" class="col-lg-6 col-md-6 col-sm-6 col-xs-12 hide"> 
    <label>Company Name<span>*</span></label> 
    <input name="CompanyName" id="CompanyName" class="form-control" placeholder="Company Name" type="text"> 
</div> 

JS

jQuery("#CompanyProfile").change(function(){  
    if(this.checked){ 
     jQuery("#divCompanyName").removeClass='hide'; 
     jQuery("#CompanyName").prop('required', true); 
    } 
    else{ 
     jQuery("#divCompanyName").addClass='hide'; 
     jQuery("#CompanyName").prop('required', false); 
    } 
}); 

的 「必需的」 屬性適用。當我檢查複選框時,我可以在調試器中看到「必需」被添加到輸入。但「隱藏」類不會被刪除。

我已經做了的jsfiddle:https://jsfiddle.net/sincos/zu84w61j/

這可能是簡單的東西,但我不能找到它。你能幫忙嗎?

+2

'.addClass ='hide''應該是'.addClass('hide')'。相同的removeClass – j08691

+0

是的!我知道這是一個簡單的錯誤,我找不到它!我在我的代碼的其他地方使用它,我已經比較了它,我從來沒有看到線之間的區別...謝謝你們! – sincos

回答

1

記住,使用jQuery,這些屬性需要在括號報價,如下所示:

jQuery(".class_name").removeClass("class_name"); 

如果您嘗試添加類或removeC lass to a ID:

jQuery("#ID_name").removeClass("class_name"); 
2

用作.addClass( 「隱藏」)和.removeClass( 「隱藏」)

https://api.jquery.com/addclass/ 
https://api.jquery.com/removeclass/ 

jQuery("#CompanyProfile").change(function() { 
 
    if (this.checked) { 
 
    jQuery("#divCompanyName").removeClass('hide'); 
 
    jQuery("#CompanyName").prop('required', true); 
 
    } else { 
 
    jQuery("#divCompanyName").addClass('hide'); 
 
    jQuery("#CompanyName").prop('required', false); 
 
    } 
 
});
.hide {display:none;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 

 
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-12"> 
 
    <label>Company Profile</label> 
 
    <input id="CompanyProfile" name="CompanyProfile" type="checkbox" data-toggle="toggle" data-on="YES" data-off="NO" data-onstyle="success" data-offstyle="danger" value="1"> 
 
</div> 
 

 
<div id="divCompanyName" class="col-lg-6 col-md-6 col-sm-6 col-xs-12 hide"> 
 
    <label>Company Name<span>*</span> 
 
    </label> 
 
    <input name="CompanyName" id="CompanyName" class="form-control" placeholder="Company Name" type="text"> 
 
</div>

+0

當我看到你的代碼時,我找不到你和我的區別......我看不到我曾經使用過等號而不是括號...... thx – sincos

相關問題