提交 ajax 返回的表单

Submit the form returned by ajax

本文关键字:表单 返回 ajax 提交      更新时间:2023-09-26

我想提交ajax返回的表单,但它没有提交表单。

这是我尝试过的代码

此文件称为 3.php

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
    $(function(){
      $("#submitform").on("click", function(){
       $.post("4.php").done(function(data){
         //$($.parseHTML(data)).find("#paypalsubmit").submit();
         $($.parseHTML(data)).find("input[type='submit']").submit();
       });
      });
    });
    </script>
    <div id="submitform">click</div>

4.php文件

    <form id="paypalsubmit" method="post" action="stackoverflow.com">
    <input type="text" value="hello stack" name="inputt">
    <input type="submit" name="submit" value="submit">
    </form>

更新使用的点击功能,它有效

尝试了另一种方法仍然不起作用

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script>
    $(function(){
      $("#submitform").on("click", function(){
        alert("hello");
       $.post("4.php").done(function(data){
        $("#formplace").html(data).find("#paypalsubmit").submit();
        setTimeout(function(){
            alert("submitting the form");
            //$("#formplace").find("#paypalsubmit").submit();},
            //$("#paypalsubmit").submit();},
            $("#formplace").find("input[type='submit']").click();},
            2000);

       });
      });
    });
    </script>
    <div id="submitform">click</div>
    <div id="formplace"> </div>

谢谢

而是使用虚拟div 来保存表单,然后提交表单

$.post("4.php").done(function(data){
   var $div = $('<div>',{ html : data });
   $div.find("form")[0].submit();
});

不确定是否可以按照上述建议提交表格。但另一种方法是将表单放入页面中,然后提交:

$.post("4.php").done(function(data){
   $('body').append(data);
   $("#paypalsubmit")[0].submit();
});

我认为,你不能在没有操作("点击")的情况下提交新的附加一个!对我来说,使用的触发器正在工作。查找类型提交而不是表单 ID

 $(function(){
      $("#submitform").on("click", function(){
        alert("hello");
       $.post("4.php").done(function(data){
        $("#formplace").html(data).find(":submit").trigger("click");
      });    
    });

替换下面的行

$($.parseHTML(data)).find("input[type='submit']").submit();

$("#paypalsubmit").submit();

你应该在点击时改变你的

$("#submitform").on("click", "#submitform", function() {

这将允许jQuery看到新创建的提交按钮。