Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

remove parts of string with javascript

I have somewhat of an odd situation, where I need to fix a bug in a website where, when a string is created (dynamically) it adds 5 spaces before the string and 5 spaces after the string. Obviously, the best thing to do would be to fix the back end code and get rid of those spaces... long story short, I can't and I have to do it with javascript. I'm not quite sure how to do it, but this is what I was thinking

<!--Dynamically generated string including spaces added in backend-->
<span id="balance">     245.34     </span>

My idea was to do the following with javascript

function removespace()
{
  var oldString = document.getElementById('balance');
  var newString = (THIS IS WHERE I AM STUCK... I NEED TO REMOVE THE SPACES);
  document.getElementByID('balance').innerHTML = newString;
}

Does anyone have any suggestions? Thanks!

ALSO FORGOT TO MENTION: I can't use any javascript libraries like prototype or jquery.

Edit: I have this so far... but it doesn't seem to be working:

<span id="balance">     $245.00     </span>

 <script>
 function removespace()
 {
   var oldString = document.getElementById('balance');
   var newString = oldString.trim ();
   document.getElementByID('balance').innerHTML = newString;
 }

 String.prototype.trim = function() {
 return this.replace(/^\s+|\s+$/g,"");
 }
 </script>

here is the solution I used... I finished it before I saw the other updates... but everyone was very helpful

function trim(stringToTrim) {
return stringToTrim.replace(/^\s+|\s+$/g,"");
 }
 var oldString = document.getElementById('balance').innerHTML;
 var newString = trim(oldString);
 document.getElementById('balance').innerHTML = newString;
like image 556
Bill Avatar asked Oct 12 '25 07:10

Bill


1 Answers

Unfortunetly JavaScript does not have a trim() function. But you can roll your own:

String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g,"");
}

and then do:

var newString = oldString.trim ();

the above function is from this website (first result on google for "javascript trim")

edit (based on your update to your question and comments):

change

var oldString = document.getElementById('balance');

to

var oldString = document.getElementById('balance').innerHTML;

and change

document.getElementByID('balance').innerHTML = newString;

to

document.getElementById('balance').innerHTML = newString; // notice the lower case d

and you have to call the removespace function at some point (but I'm sure you already do that) :)

like image 124
Jan Hančič Avatar answered Oct 13 '25 21:10

Jan Hančič