Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 由Html.ActionLink生成的意外href_Asp.net Mvc_Actionlink - Fatal编程技术网

Asp.net mvc 由Html.ActionLink生成的意外href

Asp.net mvc 由Html.ActionLink生成的意外href,asp.net-mvc,actionlink,Asp.net Mvc,Actionlink,我的代码中有以下Html.ActionLink: @Html.ActionLink("Up", "GetCategory", "Category", new { C_ID = CID, D_ID = DID, E_ID = EID, F_ID = FID }, new { id = "item-" + ItemID + "-getcategories-" +

我的代码中有以下Html.ActionLink:

@Html.ActionLink("Up", 
                "GetCategory", 
                "Category", 
                 new { C_ID = CID, D_ID = DID, E_ID = EID, F_ID = FID },
                 new { id = "item-" + ItemID + "-getcategories-" + ItemLevel, 
                       @class = "getCategory" })
我想将Javascript变量的值附加到路由字典中。为此,我使用了这个问题中指定的解决方案

我试图定制,这就是我所拥有的:

$(function ()
{
      $('a.getCategory').click(function ()
      {
        .
        .
        .
        var CatID = 0; //Calculate from this.ID
        this.href = this.href + '?Cat_ID=' + CatID;
      });
});
事实是,
this.href
的值不是Html.ActionLink生成的值。相反,它是页面的当前URL。 我的理解是
this.href
应该指ActionLink的href(因为
this
指的是ActionLink生成的锚元素)。我做错了什么?

编辑

更让人困惑的是:Html.ActionLink是用于其中一个选项卡(我使用jqueryui选项卡)。因此,如果我使用
.attr('href')
读取JS函数中的值,我会得到一个完全不同的值:

      var AnchorHref = $(this).attr('href');

AnchorHref
的值是
#ui tabs XX
(其中XX是一个数字)-这是由Jquery ui tabs自动生成的div。

您能在没有Jquery ui tabs的情况下尝试代码吗?也许标签会弄乱你的hrefs…@nemesv:没有jqueryui标签就可以了。