使用jQuery下拉菜单添加textbox dynamicaly
问题描述:
Dynamically add textbox using jquery
从上面的链接我想要类似的东西,但我想使用下拉菜单。
这里是我的代码
http://jsfiddle.net/boyee007/VyG6F/
将添加文本框取决于值。
如果选择3将只显示3个文本框,如果2将只显示2个文本框等使用jQuery下拉菜单添加textbox dynamicaly
答
尝试是这样的:
$("#ppl").change(function(){
// The easiest way is of course to delete all textboxes before adding new ones
//$("#holder").html("");
var count = $("#holder input").size();
var requested = parseInt($("#ppl").val(),10);
if (requested > count) {
for(i=count; i<requested; i++) {
var $ctrl = $('<input/>').attr({ type: 'text', name:'text', value:'text'});
$("#holder").append($ctrl);
}
}
else if (requested < count) {
var x = requested - 1;
$("#holder input:gt(" + x + ")").remove();
}
});
看到它运行here。
谢谢:)。效果很好。但我不希望它继续添加文本框,当我选择另一个值。如果你选择5,它只显示5个文本框,那么如果你选择3(它只显示3个文本框),不要再添加3个文本框。我希望这是有道理:) – tonoslfx 2011-02-14 11:11:40
请参阅我编辑的答案。虽然删除所有内容并从头开始会更容易,但用户将丢失任何已输入的文本。出于这个原因在更新我添加/删除所需的元素,以达到正确的计数。 – kgiannakakis 2011-02-14 12:03:33