jQuery .submit () не отправляет ввод ввода в Firefox - PullRequest
3 голосов
/ 15 августа 2011

У меня есть небольшой скрипт jQuery (1.6.2), который изменяет входное значение отправки на «Отправка ...» и предотвращает его работу без выбранного изображения.

$('form#upload').submit(function(event)
{
  event.preventDefault();

  var image = $('input[name="image"]');
  var upload = $('input[name="upload"]');

  if (image.val())
  {
    upload.val('Sending...');
    this.submit();
  }
});

image - этовходной файл, upload - входной файл.В Chrome он работает нормально, но Firefox (5.0) не отправляет входные данные в POST, а только изображение, что приводит к сбою сценария на стороне сервера.Я мог бы обойти это, но я хотел бы знать, смогу ли я это исправить, и я не могу ничего найти на этом.

1 Ответ

6 голосов
/ 15 августа 2011

Просто удалите безусловный event.preventDefault(); и вызывайте его только в том случае, если форма должна не быть отправлена.

$('form#upload').submit(function(event)
{

  var image = $('input[name="image"]');
  var upload = $('input[name="upload"]');

  if (image.val()) {
    upload.val('Sending...');
  }
  else {
    event.preventDefault();
  }
});
...