[英]Using external javascript files with asp.net MVC
我有一些JavaScript,其中我正在使用诸如
var url = <%=ResolveUrl("~/controller/action") %>
使用以下命令将javascript嵌入.aspx页中时:
<script>
标记一切正常
当我将其移至外部文件时,具有帮助程序方法的那些脚本不起作用。
其他脚本仅使用
var url = <%=ResolveUrl("~/controller/action") %>
不要。
这些不能在外部javascript文件中使用吗?
如果可以的话,我想从aspx文件中获取所有JavaScript。
谢谢!
ResolveUrl是Control类的帮助器方法,这就是为什么您可以从ViewPages中调用它们的原因(以.aspx结尾)
您无法从javascript调用这些文件,因为这些文件被视为没有编译的简单资产。
但是,您可以做的是在母版页或视图页中为所需的路径设置变量,并从js文件中引用它们。 一个更好的解决方案是将您需要的URL保留在文档中,例如<a>标记中,并在执行操作时使用javascript将它们引出:
例如,此jquery代码从<a>标签获取url,并用ajax调用中的html内容替换该标签。
$('a#clickme').click(function() {
var $this = $(this);
$.ajax({
type: 'GET',
url: $this.attr('href'),
success: function(data) {
$this.replaceWith(data);
},
failure: function(data) {
alert('Handle this error gracefully');
}
});
return false;
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.