Я использую виджет боковой панели WordPress для захвата адресов электронной почты. Дело в том, что он перенаправляет после отправки формы. Я хочу, чтобы посетитель оставался на странице, на которой он находился после отправки формы, просто скрытым дивом, сообщающим об успешной регистрации.
Я пробовал что-то с таким javascript -
<script type="text/javascript">
function showHide() {
var div = document.getElementById("hidden_div");
if (div.style.display == 'none') {
div.style.display = '';
}
else {
div.style.display = 'none';
}
}
</script>
И это прекрасно работает для показа скрытого div при отправке, но тогда фактическая форма не работает: (
Форма (с тем, что я пытался сделать) такая:
<div id="wp_email_capture"><form name="wp_email_capture" method="post" onsubmit="showHide(); return false;" action="<?php echo $url; ?>">
<label class="wp-email-capture-name">Name:</label> <input name="wp-email-capture-name" type="text" class="wp-email-capture-name"><br/>
<label class="wp-email-capture-email">Email:</label> <input name="wp-email-capture-email" type="text" class="wp-email-capture-email"><br/>
<input type="hidden" name="wp_capture_action" value="1">
<input name="submit" type="submit" value="Submit" class="wp-email-capture-submit">
</form>
<div id="hidden_div" style="display:none"><p>Form successfully submitted.</p>
</div>
Проблема заключается в том, что где-то между «return false» и действием формы (я думаю, кодер плагина сделал это перенаправлением). Если я удаляю «return false», он перенаправляет. С 'return false' форма не работает. Я не могу найти способ заставить форму работать, но не перенаправить, т.е. просто покажи скрытый div, работай, и все тут! Без перенаправления :) Буду признателен за вашу помощь.