Ошибка при заполнении ввода HTML с помощью JavaScript - PullRequest
0 голосов
/ 21 мая 2018

У меня есть значение, полученное из PHP-кода, и я хочу вставить int в поле ввода.

echo '<script type="text/javascript"> document.getElementById("advSetting1").value = '.$myvalue1.' </script>';

с этим полем ввода

 <input id="advSetting1" type="text" name="timeout">

Этот код не даетмне любая ошибка, и строка, которую я получаю из $ myvalue1, является строкой с числом, подобным 66.

Когда я использую тот же код, но со строкой, которая отформатирована как 8.8.4.4, я получаю эту ошибку Ошибка синтаксиса: неожиданный токен: числовой литерал

Как я могу решить эту проблему?Есть намеки?Спасибо за время и, в конце концов, ответ :)

1 Ответ

0 голосов
/ 21 мая 2018

Вам нужно экранировать специальные символы JavaScript при печати строки из PHP в JavaScript.Самый простой способ - использовать функцию json_encode :

echo '<script type="text/javascript"> document.getElementById("advSetting1").value = '.json_encode($myvalue1).' </script>';

. Она печатает допустимое объявление значения JavaScript для любого типа данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...