2015-09-28 41 views
2

我有以下選擇盒:選擇框用的TextInput

<select class="form-control" id="a-tenantID2"> 
    <option value="">Only Tenant</option> 
     <optgroup label="editor"> 
      <option value="none"></option> 
      <option value="test1">test1</option> 
     </optgroup> 
    </option> 
</select> 

不,我想實現的,即如果第一個選項被選中(在一個沒有名字的),似乎有一個TextInput字段,所以有人可以寫下自己的價值。

這怎麼可能?

+0

綁定change事件查無值如果是則顯示文字輸入。 – Jai

+0

您需要javascript中的函數來檢查是否選擇了

回答

1

添加一個輸入框

<input class="form-input" name="value" type="text" style="display:none"> 

用香草添加按變化事件 http://api.jquery.com/on/

$(document).on("change", ".form-control", function(){ 
    if ($(this).val()=="none") 
     $(".form-input").show(); 
    else 
     $(".form-input").hide(); 
}); 
2

不要與結合.change()事件東西與.toggle()

$('.form-control').change(function(){ 
    $('#idofInput').toggle(this.value === "none"); 
}).change(); 
1

如果Javascript:

document.getElementById('a-tenantID2').addEventListener('change', function (e) { 
 
    document.getElementById(this.id + '_input').classList[this.value !== 'none' ? 'add' : 'remove']('hidden'); 
 
});
.hidden { 
 
    display: none; 
 
}
<select class="form-control" id="a-tenantID2"> 
 
    <option value="">Only Tenant</option> 
 
    <optgroup label="editor"> 
 
    <option value="none"></option> 
 
    <option value="test1">test1</option> 
 
    </optgroup> 
 
</select> 
 
<input type="text" id="a-tenantID2_input" class="hidden" />