需要更改代码以定期执行(自动保存)

时间:2013-05-09 07:56:42

标签: javascript ajax

这是有效的代码。如果单击按钮,代码将执行

$(document).ready(function() {
$("#register").click(function(){

if ($("#is_row_changed1").val() > 0) {

$.post(
"_autosave.php",
$("#form1").serialize(),
function(data) {
$('#load').html(data);
document.getElementById('is_row_changed1').value = 0;
}//function(data) {
);//$.post(

//var str = $("#form1").serialize();//this will display in #stage2 all input values like date_day1=22&date_month1=04
//$("#stage2").text(str);

}//if ($("#is_row_changed1").val() > 0) {


});//$("#register").click(function(event){
});//$(document).ready(function() {

我需要定期执行,例如每5秒

如果$(document).ready(function() {更改为function autosave() { var t = setTimeout("autosave()", 5000);,则不会发生任何事情。

什么是正确的代码?

更新 似乎有工作代码。请,任何评论(可能是不正确/不好)

$(document).ready(function() {

$(function() {
setTimeout(autoSavePost, 5000); 
});


function autoSavePost() {
//$("#register").click(function(){

if ($("#is_row_changed1").val() > 0) {

$.post(
"_autosave.php",
$("#form1").serialize(),
function(data) {
$('#load').html(data);
document.getElementById('is_row_changed1').value = 0;
}//function(data) {
);//$.post(

//var str = $("#form1").serialize();//this will display in #stage2 all input values like date_day1=22&date_month1=04
//$("#stage2").text(str);

}//if ($("#is_row_changed1").val() > 0) {

setTimeout(autoSavePost, 5000);

}//function autoSavePost() {
//});//$("#register").click(function(event){
});//$(document).ready(function() {

1 个答案:

答案 0 :(得分:0)

看起来很好,我可能会做的一件事就是使用setInterval

$(document).ready(function() {
    function autoSavePost() {
        if ($("#is_row_changed1").val() > 0) {

            $.post("_autosave.php", $("#form1").serialize(), function(data) {
                $('#load').html(data);
                $('#is_row_changed1').val(0)
            });
        }
    }

    setInterval(autoSavePost, 5000);
});