Форма не будет отправлена ​​при создании с использованием Javascript - PullRequest
1 голос
/ 25 августа 2011

Я создаю форму входа в JavaScript. Форма отлично отображается, а HTML отлично выглядит в Google Dev Tools, но форма не будет отправлена, когда я нажму кнопку отправки.

Вот сгенерированный код формы:

var loginBox = '<div id="loginBox">';
loginBox    += '<h1>Login</h1>';
loginBox    += 'Please use the form to login below<br /><br />';
loginBox    += '<form action="home.php" method="post">';
loginBox    += '<div class="input">';
loginBox    += '<label for="username">Username</label>';
loginBox    += '<input type="text" name="username" />';
loginBox    += '</div>';
loginBox    += '<div class="input">';
loginBox    += '<label for="userpass">Password</label>';
loginBox    += '<input type="password" name="password" />';
loginBox    += '</div>';
loginBox    += '<div class="clear"></div>';
loginBox    += '<div class="input">';
loginBox    += '<input type="submit" class="submit button" value="Submit" />';
loginBox    += '</div>';
loginBox    += '</form>';
loginBox    += '</div>';

Есть идеи, почему это не сработает? Я знаю, что мог бы написать Javascript для отправки формы при нажатии кнопки отправки, но я не понимаю, почему это необходимо. Спасибо

Ответы [ 2 ]

3 голосов
/ 25 августа 2011

Большой вопрос: почему вы создаете окно для входа с помощью Javascript?

Я думаю, что реорганизовать его будет чище, и форма будет размещена внутри скрытого элемента div и использовать JavaScript, чтобы отобразить / скрыть его при необходимости.Это могло бы обойти некоторые проблемы браузера с динамическим добавлением формы с помощью element.innerHTML.

Если это не вариант, вам, возможно, придется изменить свой JS, чтобы добавить его с помощью DOM.Это довольно многословно и не очень легко читается.

1 голос
/ 25 августа 2011

Я добавил это на эту страницу, и это, кажется, работает. У вас есть сценарии проверки клиента, которые могут перехватывать событие отправки формы?

Мой код:

$(loginBox).appendTo("body");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...