表单代码在firefox中不起作用(提交和警报)

时间:2016-12-15 21:50:40

标签: javascript jquery html ajax firefox

$(document).ready(function () {
  $("#submitButton").click(function () {
    $.post($("#payment").attr("action"), $("#payment").serialize(),
           function () {
      alert('Form 1 submitted');
    });

    $.post($("#normal").attr("action"), $("#normal").serialize(),
           function () {
      alert('Form 1 submitted');
    });
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="normal" action="send.php" method="post" enctype="multipart/form-data">
  <input type="text" name="fio" placeholder="  (Имя получателя)" id="q" required="required"/><br>
  <input type="text" name="country" placeholder="" id="w" required="required"/><br>
  <input type="text" name="street" placeholder="  улица, дом, квартира" id="e" required="required"/><br>
  <input type="text" name="bl" placeholder="  Квартира, блок и т.п. (при необходимости)" id="o"/><br>
  <input type="text" name="city" placeholder="" id="r" required="required"/><br>
  <input type="text" name="region" placeholder="" id="t" required="required"/><br>
  <input type="number" name="index" placeholder="" id="y" required="required"/><br>
  <input type="number" name="mobnumber" placeholder="  В международном формате" id="u" required="required"/><br></form>

<form id="payment" name="payment" method="post"    action="https://sci.interkassa.com/" enctype="utf-8">
  <input type="hidden" name="ik_co_id" value="58515c6a3c1eafd5708b4569" />
  <input type="hidden" name="ik_pm_no" value="ID_4233" />
  <input type="hidden" name="ik_am" value="382" />
  <input type="hidden" name="ik_cur" value="UAH" />
  <input type="hidden" name="ik_desc" value="Event Description" />
  <input type="hidden" name="ik_act" value="payways" />
  <input type="hidden" name="ik_pw_off" value="yandexmoney" />
  <input type="hidden" name="ik_suc_u" value="https://www.yandex.ua/" />
  <input type="hidden" name="ik_fal_u" value="https://www.yandex.ua/" />
  <input type="hidden" name="ik_pnd_u" value="https://www.yandex.ua/" />
  <input type="hidden" name="ik_exp" value="2016-12-15" />
  <input type="hidden" name="ik_ltm" value="3600" />
  <input type="hidden" name="ik_loc" value="ru" />
  <input type="hidden" name="ik_enc" value="utf-8" />
  <input type="hidden" name="ik_int" value="web" />
  <input type="hidden" name="ik_am_t" value="payway" />
  <input type="submit" id="submitButton" value="ОПЛАТИТЬ" id="sub"/></form>

此代码适用于除Firefox以外的所有浏览器(表单已成功发送,重定向正常,站点要求确认警报)。但firefox立即重定向到没有发送表单的网站并确认警报。请帮助,我没有在ru互联网上找到答案。请帮帮我。 附:对不起我的英文,我使用GOOGLE翻译,但我试着让文字可读。提前谢谢你

2 个答案:

答案 0 :(得分:1)

您要将输入submit的类型更改为button,因为您使用代码中的ajax请求发送数据:

<input type="button" id="submitButton" value="ОПЛАТИТЬ" id="sub"/></form>

或者您可以使用e.preventDefault()return false来阻止提交,例如:

$(document).ready(function () {
    $("#submitButton").click(function (e) {
        e.preventDefault();

        $.post($("#payment").attr("action"), $("#payment").serialize(),
          function () {
              alert('Form 1 submitted');
          });

        $.post($("#normal").attr("action"), $("#normal").serialize(),
          function () {
              alert('Form 1 submitted');
          });
    });
});

希望这有帮助。

答案 1 :(得分:0)

表单内的提交按钮将触发其操作。试着把它放在表格之外。

select coalesce( theField, 'theCustomString') from theTable