问题
I am trying to retrieve values from the url and displaying it in my web page using angular JS. what i am doing is
1) saving the entire url to a variable and split it so that i can filter to the value i need.
2) However when there is a space it is shown as %20. i want this %20 to be displayed as space itself.
Example : john doe is shown as john%20doe
Controller
function InboxController($scope, $http, $cookieStore, $location) {
$scope.single_mail = function()
{
var url = $location.url();
var split_url = url.split('=');
var mess_id = split_url[1];
var from = split_url[2];
var id_value = mess_id.split('&');
var inbox_id = id_value[0];
var from_value = from.split('&');
$scope.inbox_from = from_value[0];
$scope.single_message = [];
$scope.single_message = [];
var single_inbox_mail ="https://phoe.manage.com/app/inbox/message.html?contactid="+conId+"&token="+token+"&id="+inbox_id;
$http.get(single_inbox_mail).success(function(response) {
$scope.single_message = response[0];
});
HTML view
<div class="page" data-ng-controller="InboxController">
<div class="row" ng-init="single_mail()">
<div class="mail-header row">
<div class="col-md-8">
<h3>{{single_message.subject}}</h3>
<h4>From : <strong>{{inbox_from}}</strong></h4>
</div>
</div>
<div class="mail-content">
<p>{{single_message.body}}</p>
</div>
</div>
</div>
回答1:
this is encoded url part, you should use decodeURIComponent() function and pass encoded string in first param, see sample code
decodeURIComponent("john%20doe");
//> john doe
回答2:
try this using javascript component
var url = decodeURIComponent($location.url());
来源:https://stackoverflow.com/questions/27798576/javascript-how-to-replace-20-to-space