0

我要解决的问题是:通过在 jquery onclick 事件之后解析 json 对象数组来填充单选列表。当有一个选中的选项时,我已经绑定了一个剔除属性,但这只会将当前选定选项的名称放在 observable 中。我想填写shipOption名称(现在可以使用),但也想要shipCost. formatcurrency 只是一个辅助函数,可以方便地显示它。

我的淘汰赛和 js 代码:

$(document).ready(function () {
    var shipOptions = [];

    function ovm() {
        var self = this;
        self.shippingOptions = ko.observableArray(shipOptions);
        self.shipOption = ko.observable();
        self.shipCost = ko.observable();
    }
    window.vm = new ovm();
    ko.applyBindings(vm);

我的 HTML:

<table style="width: 60%;" data-bind="foreach: shippingOptions">
    <tr>
        <td><label><input name="shipmentoptions" type="radio" data-bind="value: Name, checked: $parent.shipOption" /><span data-bind="text: Name"></span></label></td>
        <td>&euro; <span data-bind="text: formatCurrency(Costs())"></span></td>
        <td><img data-bind="attr: { src: Picture }"/></td>
    </tr>
</table>

ps 我使用的是knockout 2.3,我使用映射插件来填充shipoptions数组中的json对象

4

0 回答 0