ввод javascript в форме html

#javascript #html

#javascript #HTML

Вопрос:

Я хочу, чтобы javascript отображал данные в поле, но это не работает.

Я попробовал следующий код:

 <input type="hidden" name="skin" value="amp;skin=
<script type="text/javascript">document.write((get()));</script>
">
  

Как я могу это сделать?

Ответ №1:

Если вы хотите продолжать использовать document.write() , что я бы обычно не рекомендовал, вы можете сделать что-то вроде этого:

 <script type="text/javascript">
document.write('<input type="hidden" name="skin" value="amp;skin='   get()   '">');
</script>
  

(Проблема с вашим кодом, возможно, заключалась в дополнительных пробелах, введенных путем включения элемента script в его собственную строку, хотя вы на самом деле не объясняете, в чем проблема, поэтому я просто предполагаю.)

В качестве альтернативы вы можете включить элемент в свой HTML без значения, а затем обновить его после его анализа, вот так:

 <input type="hidden" name="skin" value="">

<script type="text/javascript">
document.getElementsByName("skin")[0].value = "amp;skin="   get();
</script>
  

Обратите внимание, что getElementsByName возвращает список всех элементов с указанным именем, поэтому во втором ответе предполагается, что вы хотите изменить первый (или единственный) элемент на name="skin" . Вместо этого я бы рекомендовал вам присвоить ему уникальный идентификатор и использовать:

 document.getElementById("theNewUniqueId").value = "amp;skin="   get();
  

Оба способа предполагают, что get() это определено ранее на вашей странице.

Хотя лучше сделать это на стороне сервера.

Комментарии:

1. Всегда пожалуйста. Когда вы будете довольны одним из полученных ответов, вы должны принять его (нажмите большую галочку рядом с ним — он должен стать зеленым).

Ответ №2:

Вы неправильно используете Javascript здесь. Вместо этого вы должны использовать PHP и написать код, похожий на этот:

 <input type="hidden" name="skin" value="amp;skin=<?= $_GET["skin"] ?>">
  

или вы должны вместо этого установить значение в Javascript.

 var input = getElementById("INPUT_ID");
input.value = "$skin="   some_string_variable;
  

Комментарии:

1. «Вместо этого вы должны использовать PHP» или любую другую серверную технологию, которая применяется в вашей среде .