设置间隔为ajax形式
Set interval to ajax form
所以我试图每秒用 ajax 表单将表单信息发送到 php,但由于某种原因它不想这样做。
这是我最近的尝试,我尝试了所有其他类似的组合(比如将所有内容都放入函数中或将所有内容都放入 setInterval 中)。
$(document).ready(function() {
var ajaxCall=function() {
$("#myForm").ajaxForm(function(e) {
$.ajax({
type:'post',
url:'php1.php',
data:$("#myForm").serialize(),
success:function(data) {
document.getElementById("result").innerHTML=data;
}
});
});
}
setInterval(ajaxCall,1000);
});
编辑
已解决 M.M 答案,感谢您的帮助!
只需将ajaxForm
更改为ajaxSubmit
有关 AjaxForm 与 AjaxSubmit 的更多信息,请参阅 this (question) and this(文档)
基本上 AjaxForm 在用户单击按钮时提交,AjaxSubmit 立即执行,因此您的代码应该是:
$(document).ready(function()
{
var ajaxCall=function()
{
$("#myForm").ajaxSubmit(function(e)
{
$.ajax(
{
type:'post',
url:'php1.php',
data:$("#myForm").serialize(),
success:function(data)
{
document.getElementById("result").innerHTML=data;
}
});
});
}
setInterval(ajaxCall,1000);
});
评论说明后更新
$(document).ready(function(){
//live feed
var ajaxCall=function(){
$("#myForm").ajaxSubmit(function(e){
ajax_submit();
});
}
setInterval(ajaxCall,1000);
//real submit
$("#myForm").ajaxForm(function(e){
ajax_submit();
});
function ajax_submit(){//ajax_code
$.ajax({
type:'post',
url:'php1.php',
data:$("#myForm").serialize(),
success:function(data) {
document.getElementById("result").innerHTML=data;
}
});
}
});
如果您希望将提要与提交区分开来,您可以将参数传递给 ajax_submit
函数
摆脱 ajaxForm() 调用似乎可以完成您想要做的事情:
$(document).ready(function() {
var ajaxCall = function() {
$.ajax({
type: 'post',
url: 'php1.php',
data: $("#myForm").serialize(),
success: function(data) {
document.getElementById("result").innerHTML = data;
}
});
}
setInterval(ajaxCall, 1000);
});
所以我试图每秒用 ajax 表单将表单信息发送到 php,但由于某种原因它不想这样做。
这是我最近的尝试,我尝试了所有其他类似的组合(比如将所有内容都放入函数中或将所有内容都放入 setInterval 中)。
$(document).ready(function() {
var ajaxCall=function() {
$("#myForm").ajaxForm(function(e) {
$.ajax({
type:'post',
url:'php1.php',
data:$("#myForm").serialize(),
success:function(data) {
document.getElementById("result").innerHTML=data;
}
});
});
}
setInterval(ajaxCall,1000);
});
编辑
已解决 M.M 答案,感谢您的帮助!
只需将ajaxForm
更改为ajaxSubmit
有关 AjaxForm 与 AjaxSubmit 的更多信息,请参阅 this (question) and this(文档)
基本上 AjaxForm 在用户单击按钮时提交,AjaxSubmit 立即执行,因此您的代码应该是:
$(document).ready(function()
{
var ajaxCall=function()
{
$("#myForm").ajaxSubmit(function(e)
{
$.ajax(
{
type:'post',
url:'php1.php',
data:$("#myForm").serialize(),
success:function(data)
{
document.getElementById("result").innerHTML=data;
}
});
});
}
setInterval(ajaxCall,1000);
});
评论说明后更新
$(document).ready(function(){
//live feed
var ajaxCall=function(){
$("#myForm").ajaxSubmit(function(e){
ajax_submit();
});
}
setInterval(ajaxCall,1000);
//real submit
$("#myForm").ajaxForm(function(e){
ajax_submit();
});
function ajax_submit(){//ajax_code
$.ajax({
type:'post',
url:'php1.php',
data:$("#myForm").serialize(),
success:function(data) {
document.getElementById("result").innerHTML=data;
}
});
}
});
如果您希望将提要与提交区分开来,您可以将参数传递给 ajax_submit
函数
摆脱 ajaxForm() 调用似乎可以完成您想要做的事情:
$(document).ready(function() {
var ajaxCall = function() {
$.ajax({
type: 'post',
url: 'php1.php',
data: $("#myForm").serialize(),
success: function(data) {
document.getElementById("result").innerHTML = data;
}
});
}
setInterval(ajaxCall, 1000);
});