Можно ли разместить два .$ajax на одной странице?

#javascript #php #ajax

Вопрос:

У меня возникли проблемы с удержанием двух видов «форм» на одной странице. Первый, который я сделал, работает вполне нормально:

 $(function() {
    $("form#firstForm").submit(function(e) {
        e.preventDefault();    
        var formData = new FormData(this);

        $.ajax({
            url: 'submit.php',
            type: 'POST',
            data: formData,
            /*success: function (data) {
                alert(data)
            },*/
            cache: false,
            contentType: false,
            processData: false
        });
    });
});

 

Однако второй вариант тоже не работает. Он взаимодействует со своим PHP-файлом, но не отправляет параметр данных. Я читал, и многие говорят, что нужно использовать данные: { } но когда я это делаю, я получаю ошибку 500. Что мне делать? Что также странно, так это то, что значение, которое я отправляю, действительно отправляется на консоль. Это просто не проходит через AJAX.

 
  $(function() {
    $("#submit").click(function(e){
      e.preventDefault();
      var factorValue = $("#factor").val();
      console.log(factorValue);
 
      $.ajax({
        url: 'save.php',
        type: 'POST',
        data: factorValue,

       /*success: function(factor) {
          console.log(factor);
        },*/
      });
    });
  });


 

Значение «фактор» относится к простому типу ввода.

 
<td><input type="text" class="form-control" id='factor' name="factor" placeholder="{$factor}" />  </td>

 

P. S: Эта страница отображается с помощью Smarty.

Комментарии:

1. Вы должны отправить пару ключ/значение. Вы только устанавливаете значение, как data и во втором. См. документы $.ajax

2. @charlietfl Я изменил его на данные: {фактор: значение фактора}, и страница выдает мне ошибку 500.

3. Что ж, это правильный способ отправки. Проверьте журналы ошибок, чтобы узнать, что вызывает 500. Что-то не так в php

4. Также не используйте нажатие кнопки «Отправить». Вместо этого используйте форму отправить

5. @charlietfl «данные: {фактор: «Значение фактора»},» — Неожиданный «: «, ожидаемый один из: «}»

Ответ №1:

Сама ошибка была замаскирована как ошибка на стороне сервера из-за того, что среда разработки является сервером. Но на самом деле это была синтаксическая ошибка, которую я уловил через композитора.

 
data: { "factor": factorValue}