javascript - 使用backbone.js读取多个输入

标签 javascript jquery backbone.js

我正在尝试 todos.jsBackbone.js 演示。

在演示中,他们有一个输入文本框,可以从初始化函数中获取数据,如下所示:

<input id="new-todo" type="text" placeholder="Todo item...">

initialize: function () {

        this.input = this.$("#new-todo");

我的问题是,是否可以从 3 个输入文本框而不是仅一个输入文本框中获取数据?

我可以尝试这个,但这似乎扩展得不太好:

<input id="new-todo1" type="text" placeholder="Todo item...">
<input id="new-todo2" type="text" placeholder="Todo item...">
<input id="new-todo3" type="text" placeholder="Todo item...">

初始化:函数(){

    this.input = this.$("#new-todo1");
    this.input =+ this.$("#new-todo2");
    this.input =+ this.$("#new-todo3");

有更好的方法吗?

谢谢

最佳答案

我假设您想从多个输入中获取值,并将它们作为标题放在待办事项中。我建议在 initialize 中存储对输入的引用:

initialize: function () {
   this.input = this.$("#new-todo");
   ...
}

并且 createOnEntermethod 应该更改为:

createOnEnter: function(e) {

   //concatenate the values from all inputs
   var val = "";
   this.input.each(function() {
     val += ($(this).val());
   });

  if (e.keyCode != 13) return;
  if (!val) return;

  Todos.create({title: val});

  //reset all the input elements
  this.input.each(function() {
     $(this).val('');
  });
}

输入元素应具有相同的 id - “new-todo”。

关于javascript - 使用backbone.js读取多个输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18537471/

相关文章:

JavaScript 正则表达式 - 正面前瞻 - 给我语法错误

javascript - Ajax 返回局部 View 丢失的 Javascript

使用 "data"属性的 JQuery 选择器

javascript - 使用 RequireJS 实现持久/可访问的 BackboneJS 模型

javascript - 如何让 cryptojs 处理 "rollup"文件

javascript - JSON解析重复数据的问题?

javascript - 如何在 JavaScript 中同步运行函数?

Jquery Serialize 仅适用于 IE

javascript - Backbone js显示旧模型

javascript - 如何编写模块化的 JavaScript 应用程序?