HTML:
<input type="text" id="inputsNum" />
<div id="content"></div>
jQuery的:
$("#inputsNum").bind('change paste keyup', function () {
var count = $(this).val(),
content = "";
for (var i = 0; i < count; i++)
{
content += $(this).append($('<input>').prop('type', 'text'));
}
$(this).next().html(content);
});
您好,
希望让用户根据他提供的值添加多个文本输入
我写了上面的代码,但我实际上根据我提供的值重复[object Object]错误,意味着它的工作,但为什么它不附加文本输入!
需要你的帮助
谢谢
答案 0 :(得分:2)
这是工作JS Fiddle
$(document).ready(function() {
$("#inputsNum").bind('change paste keyup', function () {
var count = $(this).val(),
content = "";
for (var i = 0; i < count; i++)
{
content += '<input type="text" />';
}
$('#content').html(content);
});
});
答案 1 :(得分:0)
您可以尝试将content += $(this).append($('<input>').prop('type', 'text'))
替换为content += "<input type='text' />";
您正在使用的append
函数返回一个对象,而不是像您期望的那样返回HTML作为字符串。因此,当您将其添加为字符串时,对象的toString()方法将其转换为[object Object]并将其附加到HTML