Ciao a tutti,

sto cercando di inserire dei tooltip in una tabella...per renderla piu carina, visto che la stringa che voglio mettere nel tooltip è piuttosto lunga!!!
La funzione che esegue i tooltip funziona, solo che nel caso di stringhe lunghe e soprattutto contenenti degli spazi non mi viene visualizzato nessun tooltip e nella console degli errori mi viene visualizzato "unterminated string literal".
Nel forum ho letto di provare la funzione "json_encode"...però non ho ottenuto nessun risultato.

Codice PHP:
echo "<tr onMouseOver=toolTip('$row[DescrizioneContratto]'); onMouseOut=toolTip();>....
       ...."

Non esiste una qualche funzione del php che mi permette di eliminare gli spazi...o comunque formattare la stringa in modo che vada a genio al javascript??

Per completezza vi posto anche il codice del javascript...non l'ho creato io, ma l'ho trovato in rete...
[JAVASCRIPT]
function TOOLTIP() {

this.width = 300;
this.bgColor = '#FF8000';
this.textColor = '#000000';
this.borderColor = '#C0C0C0';
this.opacity = 80;
this.cursorDistance = 5;

// don't change
this.text = '';
this.obj = 0;
this.sobj = 0;
this.active = false;


this.create = function() {
if(!this.sobj) this.init();

var t = '<table border=0 cellspacing=0 cellpadding=4 width=' + this.width + ' bgcolor=' + this.bgColor + '><tr>' +
'<td align=center><font color=' + this.textColor + '>' + this.text + '</font></td></tr></table>';

if(document.layers) {
t = '<table border=0 cellspacing=0 cellpadding=1><tr><td bgcolor=' + this.borderColor + '>' + t + '</td></tr></table>';
this.sobj.document.write(t);
this.sobj.document.close();
}
else {
this.sobj.border = '1px solid ' + this.borderColor;
this.setOpacity();
if(document.getElementById) document.getElementById('ToolTip').innerHTML = t;
else document.all.ToolTip.innerHTML = t;
}
this.show();
}

this.init = function() {
if(document.getElementById) {
this.obj = document.getElementById('ToolTip');
this.sobj = this.obj.style;
}
else if(document.all) {
this.obj = document.all.ToolTip;
this.sobj = this.obj.style;
}
else if(document.layers) {
this.obj = document.ToolTip;
this.sobj = this.obj;
}
}

this.show = function() {
var ext = (document.layers ? '' : 'px');
var left = mouseX;

if(left + this.width + this.cursorDistance > winX) left -= this.width + this.cursorDistance;
else left += this.cursorDistance;

this.sobj.left = left + ext;
this.sobj.top = mouseY + this.cursorDistance + ext;

if(!this.active) {
this.sobj.visibility = 'visible';
this.active = true;
}
}

this.hide = function() {
if(this.sobj) this.sobj.visibility = 'hidden';
this.active = false;
}

this.setOpacity = function() {
this.sobj.filter = 'alpha(opacity=' + this.opacity + ')';
this.sobj.mozOpacity = '.1';
if(this.obj.filters) this.obj.filters.alpha.opacity = this.opacity;
if(!document.all && this.sobj.setProperty) this.sobj.setProperty('-moz-opacity', this.opacity / 100, '');
}
}


var tooltip = mouseX = mouseY = winX = 0;

if(document.layers) {
document.write('<layer id="ToolTip"></layer>');
document.captureEvents(Event.MOUSEMOVE);
}
else document.write('<div id="ToolTip" style="position:absolute; z-index:99"></div>');
document.onmousemove = getMouseXY;

function getMouseXY(e) {
if(document.all) {
mouseX = event.clientX + document.body.scrollLeft;
mouseY = event.clientY + document.body.scrollTop;
}
else {
mouseX = e.pageX;
mouseY = e.pageY;
}
if(mouseX < 0) mouseX = 0;
if(mouseY < 0) mouseY = 0;

if(document.body && document.body.offsetWidth) winX = document.body.offsetWidth - 25;
else if(window.innerWidth) winX = window.innerWidth - 25;
else winX = screen.width - 25;

if(tooltip && tooltip.active) tooltip.show();
}

function toolTip(text, width, opacity) {
if(text) {
tooltip = new TOOLTIP();
tooltip.text = text;
if(width) tooltip.width = width;
if(opacity) tooltip.opacity = opacity;
tooltip.create();
}
else if(tooltip) tooltip.hide();
}
[/JAVASCRIPT]

Grazie per le eventuali risposte...
...ciaoooo