Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将可单击链接/对话框添加到Backbone.js JST EJS文件_Javascript_Backbone.js - Fatal编程技术网

Javascript 如何将可单击链接/对话框添加到Backbone.js JST EJS文件

Javascript 如何将可单击链接/对话框添加到Backbone.js JST EJS文件,javascript,backbone.js,Javascript,Backbone.js,我需要在Backbone.js模板文件中创建一个模式对话框(只需单击OK)。它位于如下循环中,在show_template.jst.ejs中: <% for(var i = 0... all words %> <% var word = get the ith word %> <td><span class="synonyms"><%= I18n.t("Synonyms") %></span></td> 我

我需要在Backbone.js模板文件中创建一个模式对话框(只需单击OK)。它位于如下循环中,在show_template.jst.ejs中:

<% for(var i = 0... all words %>
<% var word = get the ith word %>
<td><span class="synonyms"><%= I18n.t("Synonyms") %></span></td>

我希望用户能够单击“同义词”(用她选择的语言),弹出一个模式对话框,并用她的语言显示数据库中的同义词。 总而言之,我希望同义词可以点击


有人能给我指出正确的方向吗?(我是一个Javascript/Backbone.js noob)

基本上,我看到了两个让同义词可点击的选项,并知道点击了哪一个

一个视图选项-将数据放在dom上,并在单击操作时读取:(注意数据种类属性


另一个选项是为每个单词创建视图,并让它处理单击事件

假设您有一个视图附加到该模板呈现位置的父元素,您将希望为同义词类创建单击事件。如果没有更多的信息,就很难说得更具体,你的视图/模型是什么样子的?@Jack,非常感谢你的回答。让我明确一点——我还没有为同义词编写视图/模型。同义词将在ActiveRecord(Rails前端)中创建,它将是一个非常简单的类,它将接收一个单词,并返回零个或多个与该单词匹配的同义词。所以我想我已经从您那里了解到了-我需要为同义词创建一个视图/模型,在该定义中,将有一个单击事件。是这样吗?您不需要这样做,但是您需要在某个地方绑定一个单击事件处理程序,它可以在视图中,也可以在其他地方。这实际上取决于代码/页面的结构。
<% for(var i = 0... all words %>
<% var word = get the ith word %>
<td>
    <span class="synonyms" data-kind='<%= I18n.t("Synonyms") %>' >
        <%= I18n.t("Synonyms") %>
    </span>
</td>
events: {
   "click .synonums" : "synonyms_event"
},

synonyms_event: function(e) {
    var kind =  $(e.target).data("kind");
    alert(kind + " was pressed");
}