繁体   English   中英

.append之后某些功能不起作用

[英]Some functions don't work after .append

我有一个使用自动完成功能mask的工作表格。 我决定使表单更加用户友好,并开始使用选项卡Ajax加载内容。 要查看所需的表单,我正在使用.append()创建一个新标签并在其中显示内容,而不是一个新的浏览器窗口。 追加后,新创建的选项卡中的应该自动完成的字段将不再存在,而好像我复制了完全相同的字段并粘贴在最前面(不在.append选项卡中),它具有自动完成功能。 面具也一样。

我的问题是.append()到底如何工作? 为了使其生效,我是否必须追加加载一些js和jquery函数?

我不确定,因为您没有显示代码,但是,当元素不存在时,可能是在onReady内的元素上调用了autocomplete()函数,因为您肯定会使用append()动态append() tabs的内容append()onReady之后。

问题是,当tab确实存在元素时,必须检查是否调用了autocomplete()

我给你一个例子,我在tabappend和元素,然后当元素存在时,我调用autocomplete() ,并且可以正常工作。 看看这个:

 $(function() { $( "#tabs" ).tabs(); $('#appendButton').click(function(){ // create auto var $auto = $('<div class="ui-widget"><label for="tags">Tags: <\\/label><input id="tags"><\\/div>'); // append auto $('#tabs-1').append($auto); console.log('autocomplete'); // once is appened start autocomplete var availableTags = [ "ActionScript", "AppleScript", "Asp", "BASIC", "C", "C++", "Clojure", "COBOL", "ColdFusion", "Erlang", "Fortran", "Groovy", "Haskell", "Java", "JavaScript", "Lisp", "Perl", "PHP", "Python", "Ruby", "Scala", "Scheme" ]; $('#tags').autocomplete({ source: availableTags }); }); }); 
 <html lang="en"> <head> <link rel="stylesheet" href="//code.jquery.com/ui/1.11.2/themes/smoothness/jquery-ui.css"> <script src="//code.jquery.com/jquery-1.10.2.js"></script> <script src="//code.jquery.com/ui/1.11.2/jquery-ui.js"></script> </head> <body> <div id="tabs"> <ul> <li><a href="#tabs-1">Nunc tincidunt</a></li> </ul> <div id="tabs-1"> <p> <input id="appendButton" type="button" onclick"appendAuto();" value="appendAuto" /></p> </div> </div> </body> </html> 

希望这可以帮助,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM