KnockoutJs Observable Arrays和Dropdownlists

Jul*_*ley 4 asp.net-mvc-3 knockout.js

我是KnockoutJs的新手,我想知道是否有人可以帮忙解决这个问题.

我有一个viewmodel,从Mvc3控制器填充,绑定到一个下拉列表,这是正常的.

我有额外的数据存储在"platforms"observableArray中,我希望这些数据显示在文本框中,具体取决于下拉列表中的选定值.

到目前为止,这是我的代码: -

<script type="text/javascript">
    $(document).ready(function () {
        var sampleSubmission = function () {
            this.selectedPlatform = ko.observable();
            this.platforms = ko.observableArray();

            this.showSearch = ko.observable(false);
            this.craftText = ko.observable();
            this.showSerialNumber = ko.observable(0);

            this.selectedPlatform.subscribe(function (platformId) {





            } .bind(this));
        };

        var sampleSubmissionViewModel = new sampleSubmission();
        ko.applyBindings(sampleSubmissionViewModel);

        //Load the platforms
        $.ajax({
            url: '@Url.Action("GetPlatforms", "Home")',
            type: 'GET',
            success: function (data) {
                sampleSubmissionViewModel.platforms(data);
            }
        });
    });  

</script>
Run Code Online (Sandbox Code Playgroud)

有谁有任何想法我是如何实现这一目标的?

提前致谢.

Joh*_*apa 5

您可以将下拉列表的值绑定到selectedPlatform,如下所示:

<select data-bind="options: platforms, value: selectedPlatform, optionsText: 'name'"></select>
Run Code Online (Sandbox Code Playgroud)

我修改了你的代码并对你想做的事情做了一些最好的猜测并创建了一个样本.这是小提琴:http://jsfiddle.net/johnpapa/DVXH7/