Javascript 函数未在部分视图上定义
Javascript Function Not Defined on Partial View
我有一个这样的部分观点:
@model Blah.Blah.ThisModel
<script type="text/javascript">
$.getScript("/Scripts/Pages/ReferralEdit.js");
initReferralEdit();
</script>
@* blah blah rest of view here *@
然后在我的推荐编辑.js外部文件中,我有以下内容:
console.log('external loading');
function initReferralEdit() {
console.log('function is here');
}
当将其加载为主要路由(非 Ajax)时,这工作正常。 通过 Ajax 加载时,在页面加载时检查控制台时,我得到以下内容:
Uncaught ReferenceError: initReferralEdit is not defined
external loading
所以,我知道文件正在加载,因为第一个console.log()
发射正常,但该功能似乎不可用。
谁能解释为什么? (以及,为什么错误在external loading
输出之前显示在Chrome的日志中? 如何添加这些功能,以便它们"注册"或"在正确的范围内"或我缺少的任何内容?
(我已经花了几个小时试图找出如何在部分视图上加载 JS,我总是坚持这些未定义的函数......
在
尝试调用文件中的任何方法之前,您需要确保文件已完全加载。尝试如下操作:
$.getScript( "/Scripts/Pages/ReferralEdit.js" )
.done(function( script, textStatus ) {
initReferralEdit();
})
.fail(function( jqxhr, settings, exception ) {
console.log('failed to load script');
});
相关文章:
- 在不破坏未定义函数的情况下,对多个视图使用单个js文件
- 如何在ExtJs4应用程序上为视图、存储和模型设置自定义文件夹名称
- UI5:如何访问视图中定义的html元素
- $routeParams在传递到新视图时未定义&控制器
- 遍历SC.ManyArrray以创建要附加到SproutCore中的另一个视图的自定义视图
- 使用AMD时未定义淘汰组件视图模型
- 基于月份视图的完整日历自定义视图
- 自定义筛选器不'我不使用django数据表视图创建的ajax.data.Json
- Uncaught ReferenceError:尝试在Android网络视图中访问时未定义函数
- Meteor JS自动表单自定义输入-没有当前视图
- 未定义的主干视图不是函数冲突
- 更改ng包含或定义默认ui视图
- 主干无法读取属性'属性'主干视图中的未定义错误
- Cordova嵌入式网络视图未响应navigator.camera未定义
- 如何在rails视图中定义gon变量(瘦文件)
- Kendo UI自定义验证不适用于模板和视图模型
- 正在将逻辑从视图移动到自定义绑定
- 如何在 angularJS 中为一个视图定义多个控制器
- 将模型添加到木偶项视图定义之外的主干集合
- 主干子视图定义-主视图与路由器