我有一些代码可以生成下拉菜单,下拉菜单显示2/4/8,根据用户选择的内容,将创建下拉菜单数。
以下是模板代码:
div.row.hidden#rowTemplate
label.control-label(for="team") Team:
div.controls
select#team1(style='width: 160px;')
include teamsDropDown
这是生成下拉列表的JS:
脚本(类型= '文本/ JavaScript的')
$("#nTeamSelector").change(function(){
var nTeams = $("#nTeamSelector").val(); // Get the value of the team selector that you use
$("#rowContainer").empty() // Delete all existing dropdowns
for (var i=0; i<nTeams; i++){
var newRow = $("#rowTemplate").clone(); // Exact copy of the element generated by Jade
/*
* here you should change all the little fields that
* make the dropdowns different. For example:
*/
//newRow.children(".control-label").setText("Team "+(i+1)+":");
newRow.attr('id', 'team'+(i+1)+'Row');
newRow.removeClass("hidden");
$("#rowContainer").append(newRow);
}
});
目前,当我收到错误setText
时,我无法使Uncaught TypeError: Object [object Object] has no method 'setText'
行生效。除此之外,生成的每个下拉列表都有一个select
id
#team1
来自rowTemplate代码,我想将其附加到团队{{1}每生成一个下拉列表。
有什么想法吗?
答案 0 :(得分:1)
我认为你是在.text( textString )
newRow.children(".control-label").text("Team "+(i+1)+":");
要更改select
的{{1}},您还需要选择它并应用id
。像这样:
id