不是函数错误,没有加载外部脚本?
Getting not a function error, external script not loaded?
我正在尝试在我的网站上使用 input mask
脚本。当我从外部脚本引用函数时,出现错误 $(...).inputmask is not a function
。我想这可能是因为没有先加载脚本;然而,我实施了 require.js
,问题仍然存在。
我加载脚本的两种方式:
我最初直接从我的服务器加载脚本:
<script src="{% static 'jquery.inputmask.bundle.js' %}"></script>
然后方法一:
<script data-main="{% static 'jquery.inputmask.bundle.js' %}" src="{% static 'require.js' %}"></script>
现在方法二:
<script data-main="https://s3-us-west-2.amazonaws.com/s.cdpn.io/3/jquery.inputmask.bundle.js" src="{% static 'require.js' %}"></script>
我在我的脚本中引用源代码:
$(":input").inputmask();
$("#phone").inputmask({"mask": "(999) 999-9999"});
我遇到了一堆没有用的东西,但我想我可能只是忽略了一件小事。有什么想法吗?
我也试过实施:
<script> $("#txt").inputmask({"mask":"(999) 999-9999"}); </script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/inputmask.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/jquery.inputmask.js"></script>
这导致 TypeError: $("#txt").inputmask is not a function. (In '$("#txt").inputmask({"mask":"(999) 999-9999"})', '$("#txt").inputmask' is undefined)
先给inputmask.js
参考,再给jquery.inputmask.js
,这样应该对input-mask plugin
有效。
检查此 Fiddle。
更多参考:https://github.com/RobinHerbots/Inputmask/issues/1029
$("#txt").inputmask({"mask":"(999) 999-9999"});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/inputmask.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/jquery.inputmask.js"></script>
<html>
<input type="text" id="txt" />
</html>
我正在尝试在我的网站上使用 input mask
脚本。当我从外部脚本引用函数时,出现错误 $(...).inputmask is not a function
。我想这可能是因为没有先加载脚本;然而,我实施了 require.js
,问题仍然存在。
我加载脚本的两种方式:
我最初直接从我的服务器加载脚本:
<script src="{% static 'jquery.inputmask.bundle.js' %}"></script>
然后方法一:
<script data-main="{% static 'jquery.inputmask.bundle.js' %}" src="{% static 'require.js' %}"></script>
现在方法二:
<script data-main="https://s3-us-west-2.amazonaws.com/s.cdpn.io/3/jquery.inputmask.bundle.js" src="{% static 'require.js' %}"></script>
我在我的脚本中引用源代码:
$(":input").inputmask();
$("#phone").inputmask({"mask": "(999) 999-9999"});
我遇到了一堆没有用的东西,但我想我可能只是忽略了一件小事。有什么想法吗?
我也试过实施:
<script> $("#txt").inputmask({"mask":"(999) 999-9999"}); </script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/inputmask.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/jquery.inputmask.js"></script>
这导致 TypeError: $("#txt").inputmask is not a function. (In '$("#txt").inputmask({"mask":"(999) 999-9999"})', '$("#txt").inputmask' is undefined)
先给inputmask.js
参考,再给jquery.inputmask.js
,这样应该对input-mask plugin
有效。
检查此 Fiddle。
更多参考:https://github.com/RobinHerbots/Inputmask/issues/1029
$("#txt").inputmask({"mask":"(999) 999-9999"});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/inputmask.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/jquery.inputmask.js"></script>
<html>
<input type="text" id="txt" />
</html>