簡體   English   中英

在ASP.NET MVC中使用外部JavaScript文件

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM