function createList(arrunique, arrayout) {
for (i = 0; i < arrayout[0].length; i++) {
var divIdC = i;
var divIdT = i + 10;
$('#tb').append('<select name="combo" style="float:left; width:100px;" id="' + divIdC + '" onchange="getComboVal(this,' + divIdC + ')"></select>');
$('#tb').append('<input type="text" name = "textBox" style= "width:100px;" id="' + divIdT + '" onkeyup="validate(this,"' + divIdT + '") value="0">');
var select = document.getElementById(divIdC);
select.options[select.options.length] = new Option("Select " + arrunique[i][0]);
for (j = 1; j < arrunique[i].length; j++) {
select.options[select.options.length] = new Option(arrunique[i][j]);
};
};
}
在这段代码中,我想生成一个组合框和一个文本框,我想应用一些样式表属性或任何类。我怎样才能做到这一点。它不起作用。
答案 0 :(得分:11)
有很多种方式来构建javascript创建的元素。这里有几个。 Click here for live demo.
var myElem = document.createElement('div');
myElem.style.color = '#FFF';
使用jQuery:
var $myElem = $('<div></div>');
$myElem.css('color', '#FFF');
或jQuery css对象语法(用于传递多个样式)
$myElem.css({display: 'block', background: '#000'});
除了在创建元素后添加样式,您还可以考虑在创建元素后在元素中添加一个类,并在css文件中设置此类的样式。
CSS文件:
.myElem {
color: #FFF;
}
myElem.className = 'myElem';
或
$myElem.addClass('myElem');
答案 1 :(得分:1)
$('#tb').append('<input type="text" class="YOURCLASS" name = "textBox" style= "width:100px;" id="'+divIdT+'" onkeyup="validate(this,"'+divIdT+'") value="0">');
答案 2 :(得分:0)
请参阅此简化版jsFiddle。确保控制台没有生成错误,并且您正在调用createList()
函数。