Framework7 formToData 不工作

Framework7 formToData not working

我在我的应用程序中有一个屏幕登录,为了在框架中获取表单数据,我需要使用 formtoData 但它没有用,所以我决定创建另一个项目并复制粘贴框架文档脚本,但仍然没有用。

Index.html(测试项目)

        <div class="pages navbar-through toolbar-through">
            <!-- Page, "data-page" contains page name -->
            <div data-page="index" class="page">
                <!-- Scrollable page content -->
                <div class="page-content">

                        <form id="my-form" class="list-block">
                        <ul>
                            <li>
                            <div class="item-content">
                                <div class="item-inner">
                                <div class="item-title label">Name</div>
                                <div class="item-input">
                                    <input type="text" name="name" placeholder="Your name">
                                </div>
                                </div>
                            </div>
                            </li>
                        </ul>
                        </form>

                        <div class="content-block">
                        <a href="#" class="button form-to-data">Get Form Data</a>
                        </div>

                </div>
            </div>
        </div>

js(测试项目)

// Initialize app
var myApp = new Framework7();


// If we need to use custom DOM library, let's save it to $$ variable:
var $$ = Dom7;
 $$('.form-to-data').on('click', function(){
  alert("dwdq");

  var formData = myApp.formToData('#my-form');

  alert(formData);
});  

有谁知道为什么它不起作用?提前谢谢。

他们改变了功能,现在的 formToData 是 formToJSON

您可以使用展位:

formtoData 或 formToJson 将 return 相同的值:[object Object]

只需使用 JSON.stringify() 即可获得所需的结果。

 $$('.form-to-data').on('click', function(){

    var formData = myApp.formToData('#my-form');
    var formJSON = myApp.formToJSON("#my-form");

    console.log(JSON.stringify(formData));
    console.log(JSON.stringify(formJSON));
});

{"name":"Alexandre"}
{"name":"Alexandre"}

或者您甚至可以像这样序列化表单:

 $$('.form-to-data').on('click', function(){


  var formData = $$.serializeObject(myApp.formToJSON($$("#my-form"))); 

  console.log(formData);
}); 

name=Alexandre

编辑:Framework7 已更新到 v4,现在它是这样工作的:

Single Line: 
   var dados = JSON.stringify(myApp.form.convertToData('#my-form'));

他们再次更改了功能,至少在 V2 中是这样。对我有用的新功能是:

var formData = myApp.form.convertToData("#form-id");
var formString = JSON.stringify(formData);