Saltar al contenido

AngularJS string reemplazar en HTML

Siéntete libre de divulgar nuestra página y códigos con tus amigos, apóyanos para aumentar nuestra comunidad.

Solución:

Mueva el javascript a script.js y devuelva el valor

angular.module('app', []);

function StringCtrl($scope) 

  $scope.headerText = [
    LabelName: 'Submitted Forms (Form (13G), Form (12C) and etc.,)'
  , 
    LabelName: 'Planned Plans (Plan (13G), Plan (12C) and etc.,)'
  , 
    LabelName: 'Defined Schemes (Scheme (13G), Scheme (12C) and etc.,)'
  , 
    LabelName: 'Paid Insurances (Insurance (13G), Insurance (12C) and etc.,)'
  ];

  $scope.addText = 'Attach 0';
  $scope.getText = function(obj)
    return $scope.addText.replace("0", obj).replace(/((.*))/g, '')
  ;



  


Sería mucho mejor crear un método para ese propósito:

var addText = 'Attach 0';
$scope.getButtonLabel = function(label)
  return addText.replace('0', label.substr(0,label.indexOf("(")));
;

Y luego úsalo en tu marcado:

 

MANIFESTACIÓN

Es mejor crear una directiva para hacer la división y hacer que el texto dinámico se calcule dentro de la directiva.

Código:

var myApp = angular.module('myApp', [])
    .directive('splButton', function () 
    return 
        restrict: 'E',
        scope: 
            label: '='
        ,
        template: '',
        controller: function ($scope) 
            $scope.btnText = "Attached " + $scope.label.split('(')[0];
        
    ;
)
    .controller("stringCtrl", function ($scope) 
    $scope.headerText = [
        LabelName: 'Submitted Forms(Form(13G), Form(12C) and etc., )'
    , 
        LabelName: 'Planned Plans(Plan(13G), Plan(12C) and etc., )'
    , 
        LabelName: 'Defined Schemes(Scheme(13G), Scheme(12C) and etc., )'
    , 
        LabelName: 'Paid Insurances(Insurance(13G), Insurance(12C) and etc., )'
    ];
);

violín de trabajo

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *