我想使用jquery
创建一个动态表单$("#AddMobile").click(function () {
var newTextBoxDiv = $(document.createElement('div')).attr("id", 'MobileDiv' + counter);
newTextBoxDiv.after().html('<input type="text" id="Mobile' + counter + '"/>' +
'<input type="button" id="DeleteMobile+' + counter + '" class="DeleteMobile" Value="Delete"/>');
newTextBoxDiv.appendTo("#TextBoxesGroup");
counter++;
});
当我点击添加按钮时,我从控制台收到此错误"Uncaught TypeError: Cannot call method 'html' of undefined"
它是图书馆的问题吗?我怎么能知道一个函数属于哪个库?
非常感谢
答案 0 :(得分:1)
只需删除
行中的after()
即可
newTextBoxDiv.after().html('<label>Textbox #'+ counter + ' : </label>' + '<input type="text" name="textbox' + counter + '" id="textbox' + counter + '" value="" >');
它的工作正常。试试吧。
答案 1 :(得分:0)
对您的代码进行一些更改:
您不需要执行此操作$(document.createElement('div'))
,您可以让jQuery为您$("<div>")
执行此操作。
您可能希望使用.after()
或.html()
,而不是现在使用.after().html("...")
的方式。使用.after()
,您可以在所选元素之后添加HTML(在您的情况下是新创建的div)。使用.html()
修改所选元素中的内容。