Я решил, что здесь есть две проблемы. Во-первых, у моего поля ввода не было атрибута name, поэтому я настроил приведенный выше код, чтобы включить его:
var createInput = $("<input>").attr("type", "text").attr("id", "titleInput").attr("name", "titleInput");
Затем, вместо того, чтобы получать элементы по ID, я получил их по имени, как показано ниже. Возвращается в виде массива, поэтому требуется индекс 0.
if (titleAdd) {
title1 = document.getElementsByName('titleInput')[0].value;
}
else {
title1 = null;
}
Значение if l oop важно, потому что моя программа генерирует форму динамически на основе пользовательского ввода. Таким образом, значения по умолчанию не добавляются, если пользователь не инициировал эту часть формы, а часть значения была возвращена неопределенной, как указано выше. Поэтому я создал логические переменные (titleAdd) и установил для них значение false - когда пользователь щелкнул, чтобы включить что-либо в форму, этому значению titleAdd присвоено значение true, поэтому, когда данные формы читаются, только те переменные, которые были выбраны, читать.