ajax - knockout 绑定(bind)上下文将父级作为参数传递

标签 ajax json knockout.js

当我单击表行时,我得到传递给函数 $root.goToEvent 的信息对象。但我想传递该对象的上层,在本例中为事件[[1]]以及信息规则。附上屏幕和代码。提前致谢。

HTML

  <table class="mainTable" style="width:820px" border="1" data-bind="with: dataToShow">
                <tr>
                    <td width="200px" valign="top">
                        <!-- Events List -->
                        <table class="events" >
                        <thead><tr><th >События</th></tr></thead>
                        <tbody id="eventsTable" data-bind="foreach: events">

                            <!-- ko with: info -->
                            <tr id="trEvent" data-bind="css: { selected : $data==$root.chosenEvent()}, click: $root.goToEvent">
                            <td data-bind="text: event_title"></td>
                            </tr>     
                            <!-- /ko-->
                        </tbody>
                        </table>

对象: https://flic.kr/p/nvsrQB

最佳答案

一个选项是将您的函数与适当的上下文(this)和初始参数绑定(bind)

类似于:

data-bind="click: $root.goToEvent.bind($root, $parent)"

这将调用 goToEvent,并将 this 的值设置为 $root 并且第一个参数是父上下文(一个 代码中的 event 对象)。

关于ajax - knockout 绑定(bind)上下文将父级作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23446353/

相关文章:

jquery - 在 JQUERY 中获取 JSON 数组的第一个元素

json - 编码不解码时如何忽略 JSON 字段

knockout.js - 生成 knockout.js 模板时浏览器没有响应

javascript - 如何在 IE 中的 "refresh"窗口没有窗口窃取焦点?

javascript - 使用ajax在按钮单击上调用php函数并通过参数进行解析

java - 在 Jersey 中使用 JAXB 解析 JSON

knockout.js - 显示可观察数组的多个值的串联字符串

javascript - 如何将 list.js 与 Hot Towel 模板一起使用

javascript - 从ajax数据设置App

javascript - $.ajaxSetup 全局数据未合并到加载函数中