у меня есть проблема с отправкой формы, а также смена вкладки

0

У меня возникла проблема с отправкой формы, а также сменить вкладку

<ul class="nav nav-tabs">
    <li><a href="#tab1" data-toggle="tab">Enter Your Personal Details </a></li>

    <li><a href="#tab2" data-toggle="tab">Enter Your company Details </a></li>
</ul>

<div class="tab-content">
   <div class="tab pane" id="tab1">
<form method="post" action="self.php">   

    <input type="text">   

   <input type= "submit" value="save">

   </div>

<div class="tab pane" id="tab2">

    <h3>Thank you for submitting your form check your email</h3>
    <h2>Now input your company info</h2>

   </div>


</div>

если нажать кнопку "Отправить", то появится вкладка2

  • 2
    Вам не хватает </form> .

1 ответ

1

Дело в том, чтобы отправить форму в обычном режиме, нужна загрузка страницы. Чтобы обойти это, я думаю, у вас есть два варианта:

  1. Сделайте все вкладки одной единственной формой, просто обернув вкладку divs формой. Если вы это сделаете, вам придется подождать, пока все поля во всех вкладках не будут заполнены, а затем обработайте отправку формы.

  2. Используйте AJAX для отправки данных формы через JavaScript/jQuery. Это может быть немного сложно, если у вас нет опыта работы с AJAX, но посмотрите здесь, чтобы начать работу.

В любом случае, обратите внимание, что <input type="submit"> по стандарту отправляет форму при нажатии. Если вы просто хотите, чтобы кнопка выглядела и хотите обойти это поведение, вместо этого используйте <button id="tab1-button">Save</button>. Для примера ниже давайте предположим, что вы переключитесь на элемент <button> и присвоите ему указанный выше идентификатор, вы должны продолжить часть JavaScript/jQuery.

$('#tab1-button').click(function (e) {
    e.preventDefault(); //This prevents the default behaviour or #tab1-button, in case you still use a input type="submit"

    /* In case you want to use ajax, it should go here */

    $('#tab2').tab('show'); //Switching tab
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню