JQueryMobile将表单保存为txt文件

时间:2013-06-12 10:25:44

标签: forms jquery-mobile save

我正在用jquerymobile构建一个应用程序,我有一个页面,这是一个表格,我必须填写一些关于我已经完成的现场工作的信息,所以我可以保存它,而不是到达商店并填写通过猜测到达时间和完成时间来完成文书工作。 所以,我想填写表单,当我点击提交时,它会在Android手机上保存一个txt或其他文件类型。 感谢

1 个答案:

答案 0 :(得分:0)

这对我有用......

当用户点击保存按钮

var form_1;
var jsonString;
function saveFormState() {
         form_1 = $("#form").find("select,textarea, input").serializeArray();
         jsonString = JSON.stringify(form_1);
         console.log(jsonString);

         getFSToSaveForm();
}

function getFSToSaveForm(){
        window.requestFileSystem(LocalFileSystem.PERSISTENT,0 ,function(fileSystem){
            var entry=fileSystem.root;
                entry.getDirectory('myForms', {create:true, exclusive:false}, function(dirEntry){
                    dirEntry.getFile('formToSave.json', { create: true, exclusive: false}, saveToJsonFile, onError);

                }, onError);
        }, onError);
    }

    function saveToJsonFile(fileEntry){
        fileEntry.createWriter(function(writer){
            writer.onwrite = function (evt) {
                console.log("Wrote to file: " + jsonString);
            };
            writer.write(jsonString);
        }, onError);
    }

如果要恢复: +阅读文件并将阅读文本保存在vaiable上 然后使用一些Jquery。

var jsonString;
function getFSToRead(){} //You can find the code in the cordova API http://cordova.apache.org/docs/en/2.5.0/cordova_file_file.md.html

function restoreFormState() {
    var newObjectArray ;
    newObjectArray = JSON.parse(jsonString);

        console.log(newObjectArray.length);
        jQuery.each( newObjectArray, function( i, field ) {
        $( '#' + field.name).val(field.value);
         });    
}

希望有所帮助