2015-10-14 30 views
1

我使用的UI路由器加載和我有這樣AngularJs地址更改,但舊觀點是使用UI路由器

在app.js的設置,我有以下

$stateProvider 
     .state('TechReadiness', { 
      url: "/Dashboard/TechReadiness", 
      templateUrl: "/partials/TechnicalReadinessReport.aspx" 
     }) 
    .state('TechReadiness.details', { 
     url: "/ReadinessDetails/:a/:b", 
     templateUrl: function ($stateParams) { 
      return "/partials/TechReadinessDetails.aspx?b=" + $stateParams.b + '&a=' + $stateParams.a; 
     } 
    }) 

有一個頁面,在該頁面上,我創造的鏈接如下圖所示

$("#Chart5ImageMap area").each(function() { 
       var vHref = $(this).attr('href'); 
       var arg1 = vHref.substring(vHref.indexOf("'") + 1, vHref.indexOf(",") - 1); 
       var arg2 = vHref.substring(vHref.indexOf(",") + 2, vHref.lastIndexOf("'")); 
       var a = arg2.split(','); 
       $(this).attr('href', '#/Dashboard/TechReadiness/ReadinessDetails/' + a[0] +'/'+a[1]); 
      }); 

這改變了所有的點擊回發事件(asp.net圖表控件)簡單的鏈接。現在的問題是,只要我點擊鏈接url正確更新,但相應的視圖不會被加載。

例如: 如果我點擊與 鏈接一個=參數1,B =參數2

URL相應變得http://localhost:63893/#/Dashboard/TechReadiness/ReadinessDetails/parameter1/parameter2

和正確的視圖被加載

但是當我點擊鏈接與

a = parameter2,b = parameter2

t他的網址更改爲http://localhost:63893/#/Dashboard/TechReadiness/ReadinessDetails/parameter2/parameter2

但在視圖中的內容doenst改變

+0

你可以提供plunker嗎? –

回答

0

的問題是,我使用ASP.Net並且因此沒有就因爲上的

<%@ OutputCache Duration="10" Location="Server" VaryByParam="none" %> 

頁面頂部下面的行的頁面使能客戶端側高速緩存和我由通過更換上述固定它

<%@ OutputCache Duration="10" Location="Server" VaryByParam="a;b" %> 
0

當你已經在國家「TechReadiness.details」,認爲templateUrl不會重裝。您應該將參數設置爲控制器,但查看模板。