Hallo,
ein input-Feld für Namen enthält die Angaben
onkeyup = "holeVorschlaege('[HOST]',this.id,this.value)"
onblur = "loescheVorschlaege(this.id)"
Da werden bis zu fünf Vorschläge per Ajax geholt. Namen wie O'Nelly, also die Hochkommata machen Probleme. Es gibt auch Namen mit "
PHP sendet den kompletten Inhalt des Vorschlags-Containers, inklusive Javascript-Code, bei Klick den Namen ins input-Feld zu kopieren. Das gibt Probleme:
onclick="document.getElementById('name').value='O'Nelly';
Dass ich den Namen so schicke, imponiert Javascript überhaupt nicht:
echo ... htmlspecialchars($treffer['firma1'],ENT_QUOTES) ...
Ich müsste mit PHP für Javascript so etwas machen wie
value='name.replace(/'/g, ''')'
Aber beim besten Willen, wie pfriemel ich das in diese PHP-Zeile? Die Hochkommas treten sich ja geradezu auf die Füße. Mal sind sie Daten, mal gehören sie zum Javascript-Code und dann wieder zum PHP-Code:
echo "<span onClick=\"".$klick."\">";
echo htmlspecialchars($treffer['firma1'],ENT_QUOTES);
echo " ".$treffer['land_kz']."-".$treffer['plz']." ".$treffer['ort_name'];
echo "</span><br>\n";
Ich glaube, ich denke zu viel um die Ecke, vielleicht ist's ja ganz einfach.
Linuchs