簡體   English   中英

在ASP.NET MVC應用程序中引用Javascript文件中的路徑的正確方法

[英]Correct way to referencing paths in a Javascript file in an ASP.NET MVC app

目前,我在js文件中正在執行的操作是這樣的(並且有效):

    var root = "http://mydomain.com";

$.ajax({
    type: "POST",
    url: root + "/MyController/MyAction",
    data: { 'id': myId },
    dataType: "html",
    success: function (response) {
    blah blah...

但是問題是,如果有人鍵入www.mydomain.com而不是mydomain.com,則找不到該路徑。 我嘗試按照本文中的建議進行操作: Javascript文件中的相對圖像URL-ASP.net MVC和IIS 7 ,即將root設置為../或document.location.host,但兩者均不起作用。

在js文件中指定路徑(到控制器,圖像等中的動作)的正確方法是什么?

謝謝。

您認為:

<script type="text/javascript">
    var url = '<%= Url.Action("MyAction", "MyController") %>';
</script>

並在您的外部javascript文件中:

$.ajax({
    type: "POST",
    url: url,
    data: { 'id': postId },
    dataType: "html",
    success: function (response) {
    blah blah...

甚至更好:如果您要AJAX化現有鏈接或表單:

<%= Html.ActionLink("foo", "MyAction", "MyController", null, new { id = "foo" })

並在您的JavaScript中:

$('#foo').click(function() {
    $.ajax({
        type: "POST",
        url: this.href,
        data: { 'id': postId },
        dataType: "html",
        success: function (response) {
        blah blah...
    });
    return false;
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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