将jQuery函数应用于动态添加项

时间:2009-08-06 17:00:50

标签: jquery

通过jQuery append()函数添加新文本框时,jQuery无法将函数应用于该文本框;

            $("#ulList").append("<li><span class=\"ui-icon ui-icon-circle-close remove\"/><em class=\"selectedWord\">" + selectedWord + "</em><input class=\"acf acfb-input ac_input\" type=\"text\" id=\"" + name + "\" name=\"" + name + "\" value = '' /></li>");

            $("#" + name).autoCompletefb();

我试图应用于新添加的输入的函数是autoCompletefb()方法,但似乎jQuery无法找到新添加的对象。

想法?

3 个答案:

答案 0 :(得分:1)

您为输入提供了name变量内容的ID,并选择了一个id为formattedName变量内容的元素。两者有什么区别?如果它们是相同的,代码将起作用。

除此之外,在append()调用结束时有一个JS错误:

value = \"\" />";+ "</li>");

可能希望它是:

value='' /></li>");

答案 1 :(得分:1)

你在错误的地方有一个备用分号

 $("#ulList").append("<li><span class=\"ui-icon ui-icon-circle-close remove\"/><em class=\"selectedWord\">" + selectedWord + "</em><input class=\"acf acfb-input ac_input\" type=\"text\" id=\"" + name + "\" name=\"" + name + "\" value = \"\" />" + "</li>");

答案 2 :(得分:0)

在尝试在页面上访问动态添加的输入项之前,请确保已完全加载。另外,你有变量混音吗?您使用“name”作为第一行中的变量作为“formattedName”作为第二行中的变量。