Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无限形式提交$(文档)。准备好了吗_Javascript_Php_Jquery_Forms - Fatal编程技术网

Javascript 无限形式提交$(文档)。准备好了吗

Javascript 无限形式提交$(文档)。准备好了吗,javascript,php,jquery,forms,Javascript,Php,Jquery,Forms,我想创建一个post表单,它将从我的url获取数据并将其发布到我的数据库。 当我点击“添加”按钮时,它工作正常,但当我尝试使用$(document.ready)函数添加时,我得到了无限循环。(我的目标是每次执行文件时提交表单) 我对jquery一无所知,我正在使用以下代码: <script type="text/javascript"> $(document).ready(function () { document.forms["form1"].submit(); }); <

我想创建一个post表单,它将从我的url获取数据并将其发布到我的数据库。 当我点击“添加”按钮时,它工作正常,但当我尝试使用$(document.ready)函数添加时,我得到了无限循环。(我的目标是每次执行文件时提交表单) 我对jquery一无所知,我正在使用以下代码:

<script type="text/javascript">
$(document).ready(function () {
document.forms["form1"].submit();
});
</script>

$(文档).ready(函数(){
document.forms[“form1”].submit();
});

如何摆脱无限循环?

我猜您的表单没有action属性,因此它会自动发布。向要发布到的页面添加操作属性:

<form action="mypage.html"....

在表单中粘贴此行

    <input type="hidden" name="ispost" value="0" id="ispost">

在jQuery中添加这个,您的问题将得到解决

<script type="text/javascript">
    $(document).ready(function() {
       if($('#ispost').val() != 'submit')
       {
          $('#ispost').val('submit');
          $('#form1').submit();
       }
    });
</script>

$(文档).ready(函数(){
如果($('ispost').val()!='submit')
{
$('ispost').val('submit');
$('表格1')。提交();
}
});

您必须使用cookie存储首次加载信息,并在提交表单之前进行检查。根据项目要求设置过期时间。在使用jQuery cookie之前,您必须在jQuery库之后添加cookie插件

jQuery Cookie:


$(文档).ready(函数(){
如果(!$.cookie(“cookieName”)){
document.forms[“form1”].submit();//完成你的工作
$.cookie(“cookieName”,“firstSet”,“expires”:7});//立即设置cookie
}
});
希望会有帮助

使用下面的代码

<form action="yourformname.html" method="post" enctype="multipart/form-data">

</form>

<input type="submit" value="Submit">

如果有任何文件上载控件,请在表单标记中使用enctype。

您能试试吗

$(document).one("ready",function(){
  // submit form here
});

也许一个旗子可以完成这项工作

var flag = true;
$(document).ready(function(){

   if(flag){
     // submit code here
     flag = false;
   }
});

@putvande我已经编辑了解决方案请查看,他的问题在一开始读到时让我有点困惑。我猜我无法解释我的问题。我想在页面加载时提交表单,所以$(文档)。ready函数对我很重要,我不知道关于jquery的任何信息,但它对我不起作用:/@user3055776我已经更新了答案,请按照第二个选项进行操作,你的表单是否有id?替换表单id,比如$(“#粘贴你的表单id在这里”)。提交();我猜我们很接近了。我们可以使用jquery吗?这里只有一个函数$(document).ready(function(){$('#form1').submit();})@User3055776我已编辑解决方案,这将解决您的问题。请尝试一下我的php函数,我的表单在同一个页面上,所以我的表单是这样工作的:(因为我想在一个页面上完成所有的工作)那么你不应该对不定式post循环感到惊讶,每当页面被加载时,它就会自动发布。但我的问题是,我只执行了一次页面,您的表单是否有id属性问题是每次加载页面时都会再次提交。。一种解决方案可能是在处理完数据后,将其发布到另一个php文件中。。添加重定向
标题(“位置:myOtherPage.php”)
在那里编码以避免无限循环我已经尝试过了,但再次得到循环:/$(document).one(“ready”,function(){$('#form1')。submit();});请检查我的回答。
var flag = true;
$(document).ready(function(){

   if(flag){
     // submit code here
     flag = false;
   }
});