单击或按 Enter 键时触发主干事件

2023-12-31

I am new to backbone and I am looking for a way for my button to be triggered when I press Enter as well as clicking. Currently showPrompt only executes on a click. What is the cleanest DRYest way to have it execute on pressing Enter as well, preferably only for that input field.

(function () {

  var Friend = Backbone.Model.extend({
    name: null
  });

  var Friends = Backbone.Collection.extend({
    initialize: function (models, options) {
      this.bind("add", options.view.addFriendLi);
    }
  });

  var AppView = Backbone.View.extend({
    el: $("body"),
    initialize: function() {
      this.friends = new Friends(null, {view: this});
    },
    events: {
      "click #add-friend":  "showPrompt",
    },
    showPrompt: function () {
      var friend_name = $("#friend-name").val()
      var friend_model = new Friend({ name:friend_name });
      this.friends.add( friend_model );
    },
    addFriendLi: function (model) {
      $("#friends-list").append("<li>" + model.get('name') + "</li>");
    }
  });

  var appView = new AppView; 

}());

另外,我在哪里可以阅读有关此类事件绑定的更多信息?主干事件与 JS 或 jQuery 事件的定义方式有何不同?


Assuming that you are using jQuery for DOM manipulation, you can create your own "tiny" plugin that fires the Enter event in the inputs. Put it in your plugins.js or whatever setup scripts file you have:

$('input').keyup(function(e){
  if(e.keyCode == 13){
    $(this).trigger('enter');
  }
});

现在您已经创建了这个“enter”插件,您可以通过以下方式监听 Enter 事件:

events: {
  "click #add-friend": "showPrompt",
  "enter #friend-name": "showPrompt"
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

单击或按 Enter 键时触发主干事件 的相关文章

随机推荐

  • Elasticsearch CRUD 需要刷新吗?

    我需要将 RDBS 数据与 Elasticsearch 同步 实现此目的的常见方法是在 RDBS 上应用更改 然后使用消息队列 或用于 ETL 的表 在 ES 上应用相同的更改 同一个 Elasticsearch 博客建议从队列中弹出 10
  • PG::ConnectionBad:fe_sendauth:未提供密码

    当我尝试在本地 postgres 数据库上运行 rake test 时 它会抛出上述异常 这是我的 pg hba conf 文件 通过 Unix 域套接字进行数据库管理登录 本地所有 postgres 对等点 TYPE DATABASE U
  • 如何排列 CSS 元素?有我可以使用的工具吗?

    根据我最初问题的答案 我修改了我的代码 我希望有人能告诉我相比之下这是否是更好的方法 我的原始帖子和代码如下 更新的代码
  • Bootstrap 2.1.1“可折叠”无法在 IE 中首次打开

    第一次在 IE 7 8 9 中单击打开引导 可折叠 手风琴时 它无法打开 还有其他人遇到过这个问题或者能找出原因吗 Thanks jsfiddle 演示 http jsfiddle net pWU4n 7 http jsfiddle net
  • 调用协程的更有条理的方式?

    在我的代码中 我需要在前一个请求完成后调用多个 Web 请求 例如 void Init StartCoroutine FirstRequest IEnumerator FirstRequest www new WWW my url yiel
  • 我需要一个包装类的解释,并附上一个孩子能理解的例子

    I read 整个帖子 https stackoverflow com questions 889160 what is a wrapper class 它描述了对于其他有经验的程序员来说包装类是什么 但对于像我这样的新手来说却不是 我了解
  • 增量列是否会使该列上的 B 树索引不平衡?

    我一直在思考两个问题 在互联网上找不到任何关于此的资源 dbms 是如何处理的 或者他们呢 尤其是甲骨文 在提问之前 这里有一个例子 假设我有一个主表 MASTER 和从表 SLAVE 主表有一个 ID 列 它是主键 索引由Oracle创建
  • 查找该月的第一个星期二

    我正在尝试编写一个函数 它将日期向量作为输入并返回日期向量 其中输出是与输入日期匹配的该月第一个星期二的日期 So 2012 11 19 gt 2012 11 06 etc 我在一次约会中取得了一些成功 但无法推广到矢量情况 有人可以帮忙吗
  • 如何在mysql中提取两个特殊字符之间的字符串

    我正在使用查询从数据库中提取特殊字符之间的数字 select number from database where number between like 如何编写MySQL脚本来获取101 out of lt 101 gt Use SUB
  • 在 Cocoa/Objective-C 中创建看门狗的原因和方法

    祝大家星期一快乐 这是我的情况 非常感谢任何帮助 我创建了一个可执行文件 安装后将其放置在计算机的 Launch Agents 文件夹中 理论上它应该永久运行 每秒收集数据 它可以在机器睡眠时停止 但在计算机重新激活时重新启动 这是我的问题
  • asp.net MVC3 上的自定义错误页面

    我正在开发一个 MVC3 基础网站 我正在寻找一种解决方案来处理错误并为每种错误渲染自定义视图 因此 想象一下我有一个 错误 控制器 其主要操作是 索引 通用错误页面 并且该控制器将对用户可能出现的错误有更多操作 例如 Handle500
  • 模板函数的前向声明

    我有一个带有朋友模板函数的模板类 我目前有以下代码并且它正在工作 template
  • 空的“()”在 Matlab 矩阵上有什么作用?

    In Matlab 表达式到底是什么M 在哪里做M是一个矩阵 gt gt M magic 3 gt gt M ans 8 1 6 3 5 7 4 9 2 是表达式isequaln M M 在所有情况下都是如此吗 是M 只是一个副本M 或相同
  • 如何将对象转换为数组?

    输出以下内容 Array 0 gt Object fields private gt Array id gt 9093 name gt zahir Object
  • 如何上传 pdf 文件?

    我必须使用以下方式在网络应用程序中上传 pdf 文件FileUpload控制 我已经尝试过这段代码 但它有一些问题 谁能帮我这个 protected void Button1 Click object sender EventArgs e
  • 如何更改 UINavigationBar 及其上按钮的颜色?

    我想改变 UINavigationBar 的颜色 是否可以保留不同颜色的 UINavigationBar 和按钮 UINavigationBar 有一个tintColor为此的财产
  • 是否可以创建一个可以在 blobstore 中上传照片的 Google 应用引擎端点?

    我想知道是否可以使用端点在应用程序引擎 blobstore 中上传照片 如果是 请说明如何或重定向到任何可用资源 如果没有 您能否公开任何简单的替代方案 使用另一个库 将标准 servlet 与其他库一起使用 这篇文章应该有用 通过应用程序
  • 与 CMPSB 指令混淆

    我一直在看这段代码 我对代表 cmpsb line LOOP push cx mov cx 0x000B eleven character name mov si ImageName image name to find push di r
  • PHP 5 秒倒计时(CLI,而非 JavaScript)

    我正在编写一个 PHP CLI 命令行 脚本 如果意外运行 它将造成一些不可逆转的损害 我想在继续执行脚本之前显示 5 秒倒计时器 我怎样才能用 PHP 做到这一点 不要倒计时 假设有人实际上正在观看屏幕并阅读 理解倒计时的含义 完全有可能
  • 单击或按 Enter 键时触发主干事件

    I am new to backbone and I am looking for a way for my button to be triggered when I press Enter as well as clicking Cur