ajax serialize给出不同的字符串,表单自动保存不起作用

时间:2016-08-05 08:57:25

标签: php jquery ajax forms autosave

我正在尝试使用ajax和php实现自动保存功能。这是我的剧本:

function autosave() {
    alert($("#myform").serialize());
    $.ajax({
        url: "form_creator.php",
        data: $("#myform").serialize(),
        type: 'POST',
        success: function(data){
            if(data && data == 'success') {
                alert("saved");
                // Save successfully completed, no need to do anything
            }else{
                alert(data);
                // Save failed, report the error if you desire
                // ....
            }
        }// end successful POST function
    }); // end jQuery ajax call
 // end setting up the autosave on every form on the page
 }// end function autosave()
 setInterval(autosave, 5000);

问题是我在第一个警报和第二个警报中获得了不同的字符串(在其他部分中)。在第一个警报中,字符串似乎是正确的key = value& key2 = value2 ....但是else部分中的第二个警报给了我所有的html页面。这是正确的行为吗?自动保存功能不起作用......我错过了什么吗?

<?php if((isset($_POST['sub'])) || (isset($_POST["autosave_check"]))) 
{ //save to db
}else{

?>

<form  action="" method="post" id="myform" class="ajax_form" name="myform" enctype='multipart/form-data'>
    <ul class="sorting dd-list" id="my_list">
        //generate inputs           
    </ul>


    <input type="hidden" name="chbox" class='hdbox' id="chbox" value="" />
    <input type="hidden" name="save"  value="<?php echo $idn?>" />
    <input type="hidden" id="autosave_check" name="autosave_check" value="1">

    <br class="clear" /> <br />
    <div class="creator-buttons">
        <h2 class="subheader-creator"> Akce </h2>
        <table>
            <tr>
                <td>
                    <a href="javascript:;"  class='radiusz addchbox' id="ch" value="Checkbox field"><?php echo $langa['formc'][10];?>
                    </a>
                </td>
                <td align='right'>
                    <input type="hidden" id="paths"  value="<?php echo $patH?>" /> 
                    <input type="submit" name='sub' value='<?php echo $langa['formc'][13]?>' id="saveT" class='dugme1 submitforms' style="float:right;" />
                </td>
            </tr>
        </table>
    </div>
</form>
<?php } ?>

它相当长的代码,所以只是一些部分..保存在按钮点击工作完全与任何其他形式。

0 个答案:

没有答案