使用JavaScript设置HTML5输入列表值
set HTML5 input list value with JavaScript
我要通过JavaScript创建一个带有附加数据的html5输入字段。我没有任何问题创建这些dom节点,但我有麻烦设置list
属性值使用纯JavaScript。这可能吗?我已经检查了节点的功能和list
的值在那里,但是每当我尝试设置它时,没有分配新的值。有人有什么想法吗?
这里是一个代码示例。
var _form = document.body.appendChild(document.createElement('form')),
_input = _form.appendChild(document.createElement('input')),
_datalist = _form.appendChild(document.createElement('datalist'));
_input.list = 'exampleList';
_input.datalist_id = 'exampleList';
_input.className = 'getme';
_datalist.id = 'exampleList';
for (var i = 0; i < 5; i++) {
var _option = _datalist.appendChild(document.createElement('option'));
switch(i){
case i:
_option.value = i;
break;
};
};
编辑
我已经找到了通过element.setAttribute();
方法做到这一点的方法。如何在类似于(例如)element.className = 'value';
的语法中执行此操作?
提前感谢!
根据MDN,没有直接设置该属性的属性。看起来你只能用setAttribute()
您还应该注意到DOM操作会带来一些性能开销,因此有时最好将其最小化。您可能需要考虑以下内容:
var _form = document.body.appendChild(document.createElement('form')),
_input = _form.appendChild(document.createElement('input')),
_datalist = _form.appendChild(document.createElement('datalist'));
_datalist.id = 'exampleList';
_input.setAttribute('list','exampleList');
var _option = "";
for (var i = 0; i < 5; i++) {
_option += "<option value='" + i + "' />";
};
_datalist.innerHTML = _option;
演示使用setAttribute():
var _form = document.body.appendChild(document.createElement('form')),
_input = _form.appendChild(document.createElement('input')),
_datalist = _form.appendChild(document.createElement('datalist'));
_input.setAttribute('list','exampleList')
_input.datalist_id = 'exampleList';
_datalist.id = 'exampleList';
for (var i = 0; i < 5; i++) {
var _option = _datalist.appendChild(document.createElement('option'));
_option.text =i;
};
小提琴:http://jsfiddle.net/bkTxM/2/
相关文章:
- 要求输入在数据列表中
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 在JS的下拉列表中选择多个输入参数
- 改变“;onClick"这个jQuery的操作从清除输入文本改为将输入文本添加到下面的列表中
- 无法使用下拉列表检索表行中的输入值,但可以检索下拉值
- 在JavaScript中捕获select(下拉列表)上的键输入
- jQuery 设置和获取下拉列表和输入的本地存储数据
- JavaScript:更新<选择>给定月份输入的天数列表
- 创建带有文本输入和按钮的 UL 列表
- 如何通过乘数值的下拉列表禁用输入
- jQuery检查自定义Google电子表格页面上输入和下拉列表的更改
- 单击列表中的引导输入按钮将禁用其他按钮
- javascript的事件监听器将下拉列表转换为输入按钮
- 在列表项中插入错误值的文本输入
- Qualtrics(Javascript)-矩阵表-用下拉列表替换文本输入字段
- 需要帮助从列表项中获取文本并放入输入框
- 如何更改 HTML 数据列表输入上显示的图标?隐藏是可能的,但我可以将其更改为其他一些图标,例如向下箭头
- 创建列表输入检查数组,用于发布REST API
- 是否可以将标签保存在文本框列表输入中?
- Javascript库/ jquery插件,使我能够单击标签列表输入它们