<select>使用jQuery从JavaScript对象添加选项的最佳方法是什么?
我正在寻找一些我不需要插件的东西,但我也会对那些插件感兴趣.
这就是我做的:
selectValues = { "1": "test 1", "2": "test 2" };
for (key in selectValues) {
if (typeof (selectValues[key] == 'string') {
$('#mySelect').append('<option value="' + key + '">' + selectValues[key] + '</option>');
}
}
Run Code Online (Sandbox Code Playgroud)
简洁明了的解决方案:
$.each(selectValues, function(key, value) {
$('#mySelect')
.append($('<option>', { value : key })
.text(value));
});
Run Code Online (Sandbox Code Playgroud)
来自matdumsa的更改:(1)删除了append()中选项的close标记,(2)将属性/属性移动到map中作为append()的第二个参数.
我希望创建一个输入字段,该字段提供有关完成的建议,例如 VScode“Intellisense”(我认为)或dmenu所做的。
我一直在使用 Vue JS 和如下代码:
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<label>Lookup German word:
<input type="text" v-model.trim="word" v-on:keyup="signalChange" v-on:change="signalChange" list="words" autofocus>
</label>
<datalist id="words">
<option v-for="w in words">${w}</option>
</datalist>
Query: ${query} Results: ${words.length} Time taken: ${fetchtime} ms
</div>
<script>
const app = new Vue({
el:'#app',
delimiters: ['${', '}'],
data() {
return {
listId:'words',
word:'',
query:'',
words:[],
fetchtime: 0
}
},
methods: {
async signalChange(){
console.log(this.word)
if (this.word.length > 2 && this.word.slice(0,3).toLowerCase() != this.query) {
this.query …Run Code Online (Sandbox Code Playgroud)我正在尝试通过json将值数组传递给source:Bootstrap的Typeahead插件。
这是我的简单代码:JsFiddle
我有一个JSON对象,我想只将值id传递给source: array
我做错了...我尝试了很多事情。
arrays ×2
jquery ×2
autocomplete ×1
datalist ×1
html ×1
html-select ×1
javascript ×1
json ×1
vue.js ×1