Я пытаюсь получить текстовое поле с начальным значением, где, если вы щелкнете по нему, текст исчезнет, и если вы нажмете, прежде чем что-либо было введено, начальное значение вернется так же, как поле поиска на Yahoo ответы и многие другие сайты.
echo "<input type=\"text\"
onblur=\"if (this.value == '') {this.value = '$cleaned';}\"
onfocus=\"if (this.value == '$cleaned') {this.value = '';}\"
value=\"$cleaned\" />\n";
У меня есть переменная php $cleaned
в качестве начального значения. Этот код работает, за исключением случая, когда очищенная переменная содержит апостроф, например $cleaned = "FRIEND'S"
. Тогда код будет читать this.value = 'FRIEND'S'
и апостроф в FRIEND'S
рано завершает строку.
Я пытался использовать html-сущности, экранировать апостроф и использовать экранированные кавычки и не могу заставить это дело работать. Единственное решение, которое у меня есть, - заменить апострофы символами, похожими на апострофы.
Кто-нибудь знает, как справиться с этим делом?