【问题标题】:Parse values from a HTML form supported by backbone.js to json将backbone.js支持的HTML表单中的值解析为json
【发布时间】:2014-10-19 12:10:40
【问题描述】:

我是一个在backbone.js 上工作的新手 如何将 HTML 表单(backbone.js 支持)中的字段解析为 json。

我想开发一个由 Backbone.js 支持的 HTML 表单。因此,当填写注册表单时,它会以 Json 格式读取...非常感谢任何帮助!!!!提前谢谢你!

【问题讨论】:

    标签: json backbone.js backbone-views backbone-routing


    【解决方案1】:

    看看 TodoMVC:http://todomvc.com/architecture-examples/backbone/

    基本上你应该在你的表单上注册一个偶数:

        events: {
            'submit form.modal-form': 'save'
        }
    

    在您的保存函数中,您应该解析输入值并设置适当的模型属性:

    save: function (e) {
        this.model.set('customer', $input.val().trim()); // <- parsing the form field
        console.log(this.model.toJSON()); <- model converted to JSON
    }
    

    与您的要求类似:https://github.com/tastejs/todomvc/blob/gh-pages/architecture-examples/backbone/js/views/app-view.jscreateOnEnter

    【讨论】:

      【解决方案2】:

      您可以使用这个 jQuery 插件以 JSON 格式转换您的表单:https://github.com/maxatwork/form2js

      例如,如果您的表单中有以下元素:

      <input type="text" name="person.name.first" value="John" />
      <input type="text" name="person.name.last" value="Doe" />
      

      你得到了带有this.$el.find('form').toObject()的JSON,你得到了这个JSON:

      {
        "person": {
          "name": {
            "first": "John",
            "last": "Doe"
          }
        }
      }
      

      【讨论】:

      • 我猜 OP 想要将 Backbone 模型转换为 JSON 而不是表单本身。
      • 如果是这样,您可以在主干模型上使用toJson() fmethod
      • 即使这在技术上是正确的,我也绝不会在 Backbone 应用程序中这样做。骨干视图应该与模型一起使用,在理想情况下,您的视图总是有一个底层模型。您填充其属性。如果需要,您可以将其转换为 JSON。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多