How to remove currency symbol in AngularJS


Can anybody tell how to remove the currency symbol in AngularJS?

value = $filter('currency')(value);

I am getting a dollar symbol. I want to remove it.

Just pass empty string as second argument to the filter function.

value = $filter('currency')(value, "");

Also you can inject currencyFilter itself. You do not have to derive it from the filter Factory, with that you would just do:

value = currencyFilter(value, "");

Note the syntax:

$filter(‘currency’)(amount, symbol, fractionSize)


ARIA: Attribute ” aria-label “, required for accessibility, is missing on node


when using with angular material it shows the warning about aria label
ARIA: Attribute " aria-label ", required for accessibility, is missing on node:

<textarea id="taHtmlElement8316965102261715" ng-show="showHtml" ta-bind="ta-bind" ng-model="html" class="ng-pristine ng-untouched ng-valid ng-scope md-input ta-bind ta-html ta-editor form-control ng-empty ng-hide" rows="1" aria-hidden="true" aria-invalid="false" style="height: 0px;"></textarea>

where we have to add aria attribute in textangular directive

I Resolved this issue by adding the aria-label attribute.


if you have multiple fields and you want to ignore the issue in your application. Try to set $mdAriaProvider.disableWarnings();

app.config(function($mdAriaProvider) {
   // Globally disables all ARIA warnings.

Solution to your problem: you have to add attribute to your input, select, Textarea tags
Example : <textarea aria-label="Your Field Lable name"></textarea>

Angular: what is filterFilter


i am new in angular and i am bit familiar with filter word but what is filterFilter word and usage in angular. just come across a code below from this url

see the code

angular.module('FilterInControllerModule', []).
    controller('FilterController', ['filterFilter', function(filterFilter) {
      this.array = [
        {name: 'Tobias'},
        {name: 'Jeff'},
        {name: 'Brian'},
        {name: 'Igor'},
        {name: 'James'},
        {name: 'Brad'}
      this.filteredArray = filterFilter(this.array, {name:'Igor'});

just tell me what is filterFilter ? is it any built-in filter ?

Angular filter names just have to end with Filter in order to be a valid filter.

The ‘Access-Control-Allow-Origin’ header contains multiple values


i’m trying to send get request to api like it’s a login url

var url = "****&amp;alias=****&amp;login=****&amp;password=****"
$.get(url, function(data) {

i’m getting this in my console this error

XMLHttpRequest cannot load****&alias=****&login=****&password=****. 
The 'Access-Control-Allow-Origin' header contains multiple values ', *', but only one is allowed. 
Origin '' is therefore not allowed access.

i’m trying to see questions here to solve it but i didn’t get what i need to change, this is annoying actually.

The ‘Access-Control-Allow-Origin’ header contains multiple values

this solved by web.congif

By the way i’m using CHROME BROWSER any help i appreciate.

UPDATE response headers:

Access-Control-Allow-Headers:origin, x-requested-with, Content-Type, accept, Token
Access-Control-Allow-Methods:GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS
Date:Thu, 02 Jun 2016 16:41:18 GMT
Set-Cookie:JSESSIONID=51FEE1A1206B9B481DD3EEA4167A9256; Path=/gptp

Request Headers:

Accept:application/json, text/javascript, */*; q=0.01
Accept-Encoding:gzip, deflate, sdch
User-Agent:Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36

You are attempting to do Cross-origin resource sharing (CORS) which is a mechanism that allows restricted resources on a web page to be requested from another domain outside the domain from which the resource originated. (such as accessing fonts or JSON files).

Browsers restrict your access to resources from other origins as of Same-origin policy as a security measure for internet users.

To get around this issue you have to options:

  1. allow CORS on the domain (but there is are security concerns, more description about it here:

Enable CORS on the server to be able to access other domains through. this can be done by adding the following headers to responses:

Access-Control-Allow-Origin: Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept
  1. if you are not granted resource sharing with that domain, you are allowed to use JSONP for read only operations (JSONP is inherently read-only)

JSONP wraps a JSON object in a callback, which technically makes the request a non-restricted resource (a script tag) hence can be shared across domains.

it can be done via vanilla js by adding a script tag onto the page.

function process(data) {
    // do stuff with JSON

var script = document.createElement('script');
script.src = '//domainURL?callback=process'


or you can use jquery to achieve the same:

$.ajax({enter code here
    url: "",
    jsonp: "callback",
    dataType: "jsonp",
    data: {
        q: "select title,abstract,url from where query=\"cat\"",
        format: "json"
    success: function( response ) {
        console.log( response ); // server response

jquery documentation:


If you set “Full” CORS (with OPTION pre-request) on in nginx by add ‘access-control-allow-origin *’ and independently you add that header (for Simple CORS – without OPTION pre-request) to each response in SERVER (eg. php):

header('Access-Control-Allow-Origin', "*");

Then you will get this problem. Solution: remove code which add this header in server if already you add this header in your nginx config 🙂

I found this advice here


Why does my JavaScript get a “No ‘Access-Control-Allow-Origin’ header is present on the requested resource” error when Postman does not?


I am trying to do authorization using JavaScript by connecting to the RESTful API built in Flask. However, when I make the request, I get the following error:

XMLHttpRequest cannot load http://myApiUrl/login. No ‘Access-Control-Allow-Origin’ header is present on the requested resource. Origin ‘null’ is therefore not allowed access.

I know that the API or remote resource must set the header, but why did it work when I made the request via the Chrome extension Postman?

This is the request code:

    type: "POST",
    dataType: 'text',
    url: api,
    username: 'user',
    password: 'pass',
    crossDomain : true,
    xhrFields: {
        withCredentials: true
    .done(function( data ) {
    .fail( function(xhr, textStatus, errorThrown) {

If I understood it right you are doing an XMLHttpRequest to a different domain than your page is on. So the browser is blocking it as it usually allows a request in the same origin for security reasons. You need to do something different when you want to do a cross-domain request. A tutorial about how to achieve that is Using CORS.

When you are using postman they are not restricted by this policy. Quoted from Cross-Origin XMLHttpRequest:

Regular web pages can use the XMLHttpRequest object to send and receive data from remote servers, but they’re limited by the same origin policy. Extensions aren’t so limited. An extension can talk to remote servers outside of its origin, as long as it first requests cross-origin permissions.


For C# web services – webapi

Please add the following code in your web.config file under <system.webServer> tag. This will work.

        <add name="Access-Control-Allow-Origin" value="*" />

Please make sure you are not doing any mistake in the Ajax call.


    url: '',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
    type: "POST", /* or type:"GET" or type:"PUT" */
    dataType: "json",
    data: {
    success: function (result) {
    error: function () {

Angular 4 issue, please refer to How to fix Angular 4 API call issues.


Why use angular’s $log instead of console.log?


I understand it is a best practice in angular to use $log instead of console.log. However, I can’t find good documentation explaining the reasons. Why should a developer use $log?

$log first checks if the browser supports console.log (IE 8, for example, doesn’t). This prevents errors being displayed on IE 8. Note: this doesn’t mean it will log anything on IE 8, it simply means it won’t throw the error.

Next to that, it also allows you to decorate and mock $log for extending and testing purposes, if you are so inclined. You could for example decorate it to log to an array for IE 8 support.

A bonus feature: if you pass it a JavaScript Error instance, it will attempt to format it nicely. This can be found out by reading the source code.

EDIT: “It is not that IE 8 doesn’t support console.log. It just doesn’t create the console object until the dev tools are opened.” See comments below for more details.