Javascript / PHP format data field

I have a varchar data field called notes that is displayed in javascript like:

 var text = "<div style=\"white-space:nowrap;\"><div align=\"left\" class=\"smalltext\"><strong>"+name +"</strong><BR>"+address +"<br>Phone: "+phone +em +web +"<BR><EM>"+notes +"</EM></div></div>";

Open in new window


How do I alter the +notes + to insert a <BR> after 10 words or if words are not possible, then 25 characters.
pda4meAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
apresenceConnect With a Mentor Commented:
Attached code will split up into 10-word lines.
<SCRIPT language="JavaScript">
name = 'John Doe';
address = '100 Nowheresville';
phone = '800 555-1212';
em = 'em';
web = 'http://www.fofdsjklfasjflkasjfl.com/';
notes =
  'This is a list of information that should be displayed as notes ' +
  'on the screen for the given user. This time we\'re splitting based ' +
  'on the number of words, 10 per line.';

function split_text_words(text, word_count)
{
  new_text = '';
  words = 0;

  for (i=0; i<text.length; i++)
  {
    ch = text.substr(i, 1);

    if (ch == ' ')
    {
      words++;
      if (words == word_count)
      {
        new_text += '<br>';
        words = 0;
      }
      else
      {
        new_text += ch;
      }
    }
    else
    {
      new_text += ch;
    }
  }

  return new_text;
}

notes = split_text_words(notes, 10);
var text = '<div style="white-space:nowrap;"><div align="left" class="smalltext"><strong>'+ name +'</strong><BR>'+address +'<br>Phone: '+phone +em +web +'<BR><EM>'+notes +'</EM></div></div>';

document.write(text);
</SCRIPT>

Open in new window

0
 
apresenceCommented:
Attached code will split it up into 25 character blocks.
<SCRIPT language="JavaScript">
name = 'John Doe';
address = '100 Nowheresville';
phone = '800 555-1212';
em = 'em';
web = 'http://www.fofdsjklfasjflkasjfl.com/';
notes = 'This is a list of information that should be displayed as notes on the screen for the given user';

function split_text(text, char_count)
{
  new_text = '';

  while (text.length > 0)
  {
    if (new_text.length > 0) new_text += '<br>';
    new_text += text.substr(0, char_count);
    text = text.substr(char_count);
  }

  return new_text;
}

notes = split_text(notes, 25);
var text = '<div style="white-space:nowrap;"><div align="left" class="smalltext"><strong>'+ name +'</strong><BR>'+address +'<br>Phone: '+phone +em +web +'<BR><EM>'+notes +'</EM></div></div>';

document.write(text);
</SCRIPT>

Open in new window

0
 
ansudhindraCommented:
You can use chr(13) and chr(10) from your server side script to add <br> .
In coldfusion it is

Text...#chr(13)##chr(10)#... text which actually displays like

Text.....
...text

Just print these two chars wherever you want line breaks
0
 
Om PrakashCommented:
Split by 10 words..
var newnotes = note.split(" ");
var newstr = "";
for (i=0; i<newnotes.length; i++)
{
   if(y%10==0)  
      	newstr = words[i] + "<br>"
   else
    	newstr = words[i]
}     

var text = "<div style=\"white-space:nowrap;\"><div align=\"left\" class=\"smalltext\"><strong>"+name +"</strong><BR>"+address +"<br>Phone: "+phone +em +web +"<BR><EM>"+newstr  +"</EM></div></div>";

Open in new window

0
All Courses

From novice to tech pro — start learning today.