Javascript создать проблемы ввода - PullRequest
1 голос
/ 16 января 2012

Я нашел этот javascript онлайн, который добавляет кнопки ввода при нажатии кнопки.

Я изменил его так, чтобы вместо того, чтобы выбирать, какой тип ввода вы создаете, он просто автоматически создает текстовое поле. Но это не работает. Что я должен изменить?

function add(type) {

  //Create an input type dynamically.
  var element = document.createElement("input");

  //Assign different attributes to the element.
  element.setAttribute("type", "text");
  element.setAttribute("name", "goal[]");

  var foo = document.getElementById("fooBar");

  //Append the element in page (in span).
  foo.appendChild(element);

}

<INPUT type="button" value="Add" onclick="add(document.forms[0].element.value)"/>

<span id="fooBar">&nbsp;</span>

Ответы [ 2 ]

1 голос
/ 16 января 2012

DEMO

Ваша функция добавления верна, но я думаю, что здесь что-то не работает - document.forms[0].element.value

onclick="add(document.forms[0].element.value)"

Попробуйте изменить его на

onclick="add()"

Так как вы все равно не используете этот параметр типа

0 голосов
/ 16 января 2012

Некоторые браузеры не позволяют динамически устанавливать атрибут name для элемента.

Вы можете указать атрибут name в разметке, переданной createElement(), чтобы обойти эту проблему:

var element = document.createElement("<input name='goal[]' type='text' />");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...