0

有人可以幫助我將DATA數值放入新窗口。如何使用ng-href或ng-click在AngularJS的新窗口中打開大數據

我想使數據名稱爲超鏈接的td單元格。如果我點擊那個數據,它應該打開新窗口顯示值。

Demo

JSON數據

{ 
    "58231e66982cf7857fee2cb5": { 
    "_id": { 
     "$id": "58231e66982cf7857fee2cb5" 
    }, 
    "RECEIVETIME": { 
     "sec": 1478696550, 
     "usec": 529000 
    }, 
    "OPERATION": "Operation 1", 
    "DATA" : "kdsjfkdjfkdjfkjdjfjdsfjdsilkjdkfljdsklfjkdlsjfkldsjflkdsjf", 
    "ACCOUNTNUMBER": "account", 
    "STATUS": "SUCCESS", 
    "MESSAGELOGCREATIONDATE": { 
     "sec": 1478696550, 
     "usec": 537000 
    } 
    }, 
    "58231e681b58b970137b56aa": { 
    "_id": { 
     "$id": "58231e681b58b970137b56aa" 
    }, 
    "RECEIVETIME": { 
     "sec": 1478696552, 
     "usec": 961000 
    }, 
    "OPERATION": "Operation 2", 
    "DATA" : "dfdfdfkoooooooooooookdkfdkfodkfldkffdfd", 
    "ACCOUNTNUMBER": "account", 
    "STATUS": "FAIL", 
    "MESSAGELOGCREATIONDATE": { 
     "sec": 1478696552, 
     "usec": 961000 
    } 
    } 
} 

目前我使用{{list.DATA}}顯示單元格中的數據,但我想創建超鏈接,一旦用戶點擊鏈接應該在新窗口打開顯示數據。由於我的數據值大約是1000行。有人能幫助我解決這個問題嗎?

,是有辦法的數據值是UTF-8

感謝事先編碼,我可以在UTF-8解碼數據的價值。

<tr class="features" ng-repeat="list in opMessageLogs"> 
<td>{{list._id.$id}}</td> 
<td>{{list.OPERATION}}</td> 
<td>{{list.STATUS}}</td> 
<td>{{list.DATA}}</td> 
</tr> 

回答

1

對於一個新的標籤,你需要創建一個鏈接,但鏈接上的限制(URL)長,2000個字符 Link here

你可以做的是創造的角度,一個新的路線將採取參數_id,然後您可以通過撥打電話http或從service獲取數據。

而對於解碼/編碼UTF-8

function encode_utf8(s) { 
    return unescape(encodeURIComponent(s)); 
} 

function decode_utf8(s) { 
    return decodeURIComponent(escape(s)); 
} 

希望這有助於..

+0

而不是顯示的'{{list.DATA}}'小區我要在單元格中創建超鏈接,當用戶點擊該單元格,然後只應該與數據值在新窗口打開。 我是Angular JS的新手,請你指導我實施路線和服務。 – Batman

+0

對於路由你使用的是路由器嗎?爲此,你可以使用這個簡單的教程 https://scotch.io/tutorials/angular-routing-using-ui-router –

+0

截至目前我還沒有使用'ui-router'。是否可行的實施ui路由器我的要求或'ng-click'或'ng-href'應該可以工作 – Batman

1

要做到這一點,你需要做以下步驟:

  1. 創建的狀態一個參數即

    $ stateProvider.state('openTab',{ 'url':'/ link /:id', 'templateUrl':'abc.html' });

  2. 在html中使用此方法。

    <td> <a ui-sref="openTab({'id': list.DATA})" target="_blank">Click Here</a></td>

+0

當然@Manish我會試着讓你知道.. – Batman

+0

它肯定會有效:) –

+0

Manish我是對於Angular JS來說不是很新,你能否幫我修改'app.js'以使Demo [DEMO](https:// plnkr。共/編輯/ 6TIWrBVkC7mlvNNGSobx P =預覽) – Batman

相關問題