jQuery .submit()不会在Firefox中发送输入提交

时间:2011-08-15 14:51:01

标签: jquery firefox submit

我有一个小的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 个答案:

答案 0 :(得分:6)

只需删除无条件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();
  }
});