@Alina1995

Как быть с несколькими формами на ajax?

Всем привет! На странице может быть несколько вот таких форм
<form id="add_product" method="post">
     <button class="btn-small">
      <span class="icon"></span>
    </button>
   <input type="hidden" name="id_add" value="'.$id.'">
</form>


<script type="text/javascript">
$(document).ready(function() {
    $('#add_product').submit(function(e) {
        e.preventDefault();
        $.ajax({
            type: "POST",
            url: 'add_product.php',
            data: $(this).serialize(),
            success: function(html){
          $("#content").html(html);
        }
       });
     });
});
</script>


Но вот проблемка, ajax работает только с первым элементом. Вероятнее всего это из-за того что у двух и более форм одинаковый id="add_product" как правильно решить эту задачку?
  • Вопрос задан
  • 105 просмотров
Решения вопроса 1
Stalker_RED
@Stalker_RED
Поменять id.
If the id value is not the empty string, it must be unique in a document.

https://developer.mozilla.org/en-US/docs/Web/API/E...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Adamos
@Adamos
Избавиться от id вовсе. Генерировать форму в JS целиком и попутно навешивать на нее ее собственный обработчик.
Впрочем, если любая из них заполняет результатом один и тот же #content - можно просто сменить id на класс, в обработчике-то this.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы