javascript - 在 Ajax.success 上调用另一个脚本的函数
问题描述
我有一个视图,其中有一个脚本标记,我想使用另一个 JS 文件中存在的函数。如果我在同一个脚本文件中添加 AddScrollBar() 它可以工作,但我想在多个地方使用。所以我在site.js中有它。当页面被加载时,我可以看到 site.js 的脚本标签被加载。
用脚本查看
<script type="text/javascript">
function LoadXyz() {
$.ajax({
url: '/ABC/Xyz/' + @Model.Number,
success: function (data) {
LoadContainerData(data);
AddScrollBar();
}
});
$("#navMenu > li").removeClass("active");
$("#Xyz").addClass("active");
}
关于如何使用 site.js 中存在的 AddScrollBar() 的任何想法
解决方案
如果您以这种方式插入文件,则可以调用其他文件(在本例中为 site.js)的函数:
<script src="path/to/site.js"></script>
<script>
AddScrollBar();
</script>
您将能够在 site.js 中调用函数和变量,但请记住,site.js 中的函数不会被提升(正如 DonCarlos 在评论中所说)所以这不起作用
<script>
AddScrollBar();//undefined
</script>
<script src="path/to/site.js"></script>
- site.js 必须放在文档根目录中,浏览器可以访问它。因此,如果我们有一个文档根目录为/var/www/的文件夹结构,浏览器将无法访问/var中的文件。
- 如果文件放在/var/www/site.js并且调用 site.js 的文件放在同一个文件夹中,我们可以只使用
src="site.js"
(相对路径)或src="http://example.com/site.js"
(绝对路径)调用 site.js - 如果文件放在/var/www/scripts/site.js并且调用 site.js 的脚本放在/var/www/ 我们可以用
src="/scripts/site.js"
(相对路径)或src="http://example.com/scripts/site.js"
(绝对路径)调用 site.js - 如果文件放在/var/www/site.js并且调用 site.js 的脚本放在/var/www/script/ 我们可以用
src="../site.js"
(相对路径)或src="http://example.com/site.js"
(绝对路径)调用 site.js
推荐阅读
- excel - excel将整数转换为小数位
- java - 如何在 Spring CrudRepository 中使用固定值?
- discord.py - 如何从用户中删除角色?
- amazon-lex - 通过 Amazon Connect 向 Amazon Lex 插槽输入字母数字
- outlook-addin - Outlook 插件未出现在 Windows Outlook 365 中
- wordpress - WordPress 主页覆盖 htaccess 中的现有规则
- php - 停止无限循环强制下载
- angular - 如何解决“无法解析 EventlistComponent 的所有参数”的问题
- java - 如何用另一个用户输入替换部分用户输入?
- python - Python Pandas - 如果时间戳落在多个开始时间和结束时间之间,则标记