Click here to Skip to main content
Rate this: bad
Please Sign up or sign in to vote.
See more: MVC3 Knockout
Hello Friends,
I'm new to Knockout and MVC.
In my view I'm getting list of product model, which contains details like
My requirement is:
1. I want to show only 1 dropdown intially which will be populated with the ProductName from the model.
2. Based on type of product the QuantityPerUnit, UnitPrice and UnitsInStock will be displayed in the lables.
3. There is button to place extra order, which will dynamically create another dropdown of products.

Here is view:
@model IList<MVC.Models.Product>
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Layout.cshtml";
<h2>Please place an order</h2>
<script src="../../Scripts/knockout%202.20.js" type="text/javascript"></script>
    function orderReservation() {
        var self = this;
        self.product = ko.observable(_objModel);
    function ReservationsViewModel() {
        var self = this;
        self.addOrder = function () {
            self.order.push(new orderReservation());
    ko.applyBindings(new ReservationsViewModel());
    <tbody data-bind="foreach: order">
                @*<select id="ddlProduct">
                <option>Select Product</option>
                @foreach (var _prod in Model)
                <select data-bind="value: product"></select>
     <button data-bind="click: addOrder">Reserve another order</button>

Any idea how to carry out this functionality??
Thanks in advance
Posted 11-Mar-13 5:25am

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 275
1 DamithSL 265
2 CPallini 235
3 Maciej Los 185
4 George Jonsson 170
0 OriginalGriff 5,305
1 DamithSL 4,382
2 Maciej Los 3,760
3 Kornfeld Eliyahu Peter 3,470
4 Sergey Alexandrovich Kryukov 2,901

Advertise | Privacy | Mobile
Web01 | 2.8.141216.1 | Last Updated 11 Mar 2013
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100