2016-04-25 11 views
1

請在下面找到我的選擇2下拉:如何檢查值是否存在於具有標籤的select2下拉菜單中:true使用jquery?

<select class="skill-select form-control" name="name" required="true" id="skill-name"> 
        <option id="xxx"></option> <!-- Needed for select2 --> 

        <option value="33">good</option> 

        <option value="32">sdw</option> 

        <option value="18">PM</option> 

        <option value="17">TL</option> 

        <option value="ddddd" data-select2-tag="true">ddddd</option> 
        <option value="11" data-select2-tag="true">11</option> 

       </select> 

的Javascript:

$(".skill-select").select2({ 
    placeholder: 'Skill Name', 
    tags: true 
    }); 

如何訪問排除與數據選擇2標籤=「真」的選項出現在我的下拉選項。

在上面的例子中,我不想訪問具有data-select2-tag =「true」的選項'ddddd'和'11'?

目前我正在使用下面的java腳本,但這並不排除選項'ddddd'和'11'data-select2-tag =「true」;

var opt = $('#skill-name :selected').text(); 
    var valid; 
    var length = $('#skill-name option').filter(function() { 
      return $(this).text() === opt; 
     }).length; 
     if(length != 0){ 

     valid = false; 
     return; 
     } else { 
     valid = true; 
     } 
+1

您是否嘗試過的屬性不等於選擇? https://api.jquery.com/attribute-not-equal-selector/ –

+0

謝謝你的工作 – user2077648

回答

1

下面的腳本爲我工作:

addSkill = function() { 
    var opt = $('#skill-name :selected').text(); 
    var length = $('#skill-name option').not("[data-select2-tag='true']").filter(function() { 
        return $(this).text() === opt; 
       }).length; 
    if(length != 0){ 

    valid = false; 
    return; 
    } else { 
    valid = true; 
    } 
相關問題