Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 重新加载脚本文件是一种好做法吗?_Javascript_Html_Typeahead.js - Fatal编程技术网

Javascript 重新加载脚本文件是一种好做法吗?

Javascript 重新加载脚本文件是一种好做法吗?,javascript,html,typeahead.js,Javascript,Html,Typeahead.js,我正在使用typeahead.js插件,该插件可用于向HTML输入框添加自动完成功能 因此,如果加载脚本并执行以下操作 <input class="typeahead" type="text" id="partNumberInput" aria-describedby="enter Part Number" placeholder="Part Number"> 该脚本将使用类typeahead查找所有DOM元素,并添加一组父元素,并执行一些其他有助于提供自动完成功能的操作 现

我正在使用
typeahead.js
插件,该插件可用于向HTML输入框添加自动完成功能

因此,如果加载脚本并执行以下操作

<input class="typeahead" type="text" id="partNumberInput" aria-describedby="enter Part Number" placeholder="Part Number"> 

该脚本将使用类
typeahead
查找所有DOM元素,并添加一组父元素,并执行一些其他有助于提供自动完成功能的操作

现在,我想使用带有
typeahead
类的javascript append动态添加输入框。由于
typeahead
在页面开始加载时只运行一次,因此无法完成我前面提到的所有工作

在这种情况下,每次用户单击按钮添加另一个带有
typeahead
class的输入框时,我都会重新加载脚本吗

中的第一个示例演示了如何对页面中的任何元素调用typeahead

您可以使用任何想要的类对目标元素调用typeahead,而不是依赖于在元素上放置特定的类以便typeahead检测它们

例如,如果您有一个动态放置到DOM中的全新元素,并且它具有类
which
,则可以通过执行以下操作在该元素上加载typeahead:

$('.whatever')。提前键入({
//你的选择在这里
}, {
//更多选项请参见示例
})
您可能希望重新加载脚本标记本身;这可能会对您的应用程序产生意外(潜在有害)影响


一般来说,
$('.whatever').typeahead(…)
是您通常调用任何jQuery插件的方式,以便在选择器指定的元素上使用该插件进行操作。

检查文档,看看是否有方法告诉它重新初始化自身。无需重新加载脚本,只需对新元素调用
.typeahead()
。这意味着这个问题没有意义。我在typeahead.js文档中没有看到任何关于
class=“typeahead”