【问题标题】:Backbone.js - add button tag inside li tagBackbone.js - 在 li 标签内添加按钮标签
【发布时间】:2013-10-29 11:42:37
【问题描述】:

是否可以在tagName 提供的标签中添加另一个标签?

我有这个代码:

BookView = Backbone.View.extend(
  tagName: "li"
  events:
    "click .delete": "deleteBook"

  deleteBook: (ev) ->

    #delete operation /books/id
    @book.destroy success: ->
      router.navigate "",
      trigger: true

我想在每个li 标记名中放置按钮next,所以当有人点击它时,它会删除该记录。我怎么能这样做?

例如:

<ul>
<li>Some text <button type="submit">Delete</button></li>
</ul>

【问题讨论】:

    标签: ruby-on-rails events backbone.js coffeescript


    【解决方案1】:

    您只需在模板中添加一个&lt;button type="button" class="delete"&gt;(不是type="submit",这只会造成麻烦并让您做更多工作):

    render: ->
      @$el.append('Some text <button type="button" class="delete">Delete</button>')
      @
    

    然后绑定到视图initialize中模型的'destroy'事件:

    initialize: ->
      @listenTo(@model, 'destroy', @remove_and_redirect)
    

    然后你的deleteBook 简单地破坏模型:

    deleteBook: -> @model.destroy()
    

    您的remove_and_redirect 会清理并导航:

    remove_and_redirect: ->
      @remove()
      router.navigate('', trigger: true)
    

    简化演示:http://jsfiddle.net/ambiguous/X3SQa/

    【讨论】:

      【解决方案2】:

      使用包含您的按钮的模板。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-13
        相关资源
        最近更新 更多