2017-03-07 40 views
0

即時通訊使用bootstrap-tagsinput。下面的代碼工作正常,但我想讓自動清除json中不存在的特定輸入值。用戶只需從標籤中選擇他不能提交自定義值。我也使用「freeInput:false」,但它仍然在前端顯示值。請幫我解決這個問題。Bootstrap標籤自動清除自定義值後類型

enter image description here

jQuery的

var languages = new Bloodhound({ 
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name') 
, queryTokenizer: Bloodhound.tokenizers.whitespace 
, prefetch: './assets/languages.json' 
}); 
languages.initialize(); 
$('#inputtag').tagsinput({ 
freeInput: false 
, typeaheadjs: { 
    name: 'id' 
    , displayKey: 'name' 
    , valueKey: 'name' 
    , limit: 10 
    , source: languages.ttAdapter() 
} 
}); 

HTML

<input type="text" data-role="tagsinput" id="inputtag" value="" name="language[]" required data-msg-required="Please enter your language" multiple class="form-control tag"> 

回答

1

嘗試下面的代碼,這可能會幫助你。

var languages = new Bloodhound({ 
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name') 
, queryTokenizer: Bloodhound.tokenizers.whitespace 
, prefetch: './assets/languages.json' 
}); 

languages.initialize(); 
$('#inputtag').tagsinput({ 
freeInput: false 
, addOnBlur : false 
, typeaheadjs: { 
    name: 'id' 
    , displayKey: 'name' 
    , valueKey: 'name' 
    , source: languages.ttAdapter() 
    } 
}); 

$('#inputtag').tagsinput('input').blur(function() { 
    $(this).val(''); 
}); 

檢查github

+0

感謝這個作品這個問題。 :) – user7152572