2016-09-05 108 views
2

我想添加邊框到jQuery的Select2,但它不工作。如何使用jQuery將邊框添加到Select2元素中?

的JavaScript:

$('#search').click(function() { 
     if ($('#select :selected').text() == ""){ 
      $('#select').addClass("alert"); 
     } 
}); 

CSS:

.alert 
{ 
    border: 2px solid red !important; 
} 

HTML:

<select style="width:300px" id="felevselect"> 
    <option disabled="disabled" selected="selected"></option> 
</select> 
<select style="width:120px" id="napselect"> 
    <option disabled="disabled" selected="selected"></option> 
    <option value="1">Hétfő</option> 
    <option value="2">Kedd</option> 
    <option value="3">Szerda</option> 
</select> 
<select style="width:90px" id="select"> 
    <option disabled="disabled" selected="selected"></option> 
    <option>8:00</option> 
    <option>9:00</option> 
    <option>10:00</option> 
    <option>11:00</option> 
</select> 
<button id="search" type="button" class="btn btn-default">Keres</button> 

如何添加邊框只有一個選擇二元素?

+0

對於初學者你錯過了'邊境風格'在你的'邊界'的簡寫CSS聲明中。 –

+0

'alert'類已經添加了嗎?你能檢查嗎? –

+0

謝謝!更新! – polu

回答

2

如果我給你正確的,這裏是工作代碼:

HTML

<select style="width: 100px;" id="my-select"> 
    <option value="1">Item1</option> 
    <option value="2"></option> 
    <option value="3">Item2</option> 
</select> 
<button>Click me!</button> 

CSS

.alert { 
    border: 2px solid red !important; 
} 

JS

$('select').select2(); 
$('button').on('click', function() {   
    if ($('#my-select :selected').text() == ""){ 
     $('.select2').addClass("alert"); 
    } 

    // using following code you can toggle alert class 
    // $('.select2').toggleClass("alert", $('#my-select :selected').text() == ""); 
}); 

還提供Codepen

如你所知,使用select2時,這個插件隱藏select元素,並告訴你一些產生HTML(而不是select),您可以檢查使用瀏覽器的控制檯生成的HTML

更新

如果#select是你的目標,你可以將代碼更改爲以下內容,然後(在評論部分)你提到的問題將:

$('#select').next().addClass("alert"); 
0

你得內的更改處理

$('#select').on('change', function(){ 
    if ($('#select :selected').text() == ""){ 
    $('#select').addClass("alert"); 
    } 
}); 
+0

按鈕點擊功能... $('#search')。click(function(){...} – polu

+0

可以共享完整的代碼片段嗎? – Vibhaj

0

這裏是一個工作示例處理。

$('#btnTest').click(function() { 
    if ($('select :selected').text() == ""){ 
    $('select').addClass("alert"); 
    } else { 
    $('select').removeClass("alert"); 
    } 
}); 

https://jsfiddle.net/WordyTheByrd/f772n4je/

+0

按鈕點擊功能... $('#search')。click函數(){...} – polu

+0

我嘗試刪除#但不工作 – polu

+0

請檢查我的編輯,希望能夠回答任何問題 – WordyTheByrd

相關問題