Back

Current view model state

{
    autoCompleteValue: ,
    comboBoxValue: ,
    dropDownListValue: ,
    datePickerValue: ,
    timePickerValue: ,
    numericTextBoxValue: ,
    sliderValue: ,
    multiSelectValue: ,
    gridSource: [
    ],
    treeviewSource: [
    ]
}
                

View source code:

<div class="demo-section k-header wide">
            <h4>Current view model state</h4>
            <pre class="prettyprint">
{
autoCompleteValue: <span data-bind="text: displayAutoCompleteValue"></span>,
comboBoxValue: <span data-bind="text: displayComboBoxValue"></span>,
dropDownListValue: <span data-bind="text: displayDropDownListValue"></span>,
datePickerValue: <span data-bind="text: displayDatePickerValue"></span>,
timePickerValue: <span data-bind="text: displayTimePickerValue"></span>,
numericTextBoxValue: <span data-bind="text: displayNumericTextBoxValue"></span>,
sliderValue: <span data-bind="text: sliderValue"></span>,
multiSelectValue: <span data-bind="text: displayMultiSelectValue"></span>,
gridSource: [
<span data-bind="text: displayGridSource"></span>    ],
treeviewSource: [
<span data-bind="text: displayTreeviewSource"></span>    ]
}
            </pre>
</div>
<div class="demo-section k-header wide">
    <ul class="fieldlist">
        <li>
            <h4>AutoComplete</h4>
            <input data-role="autocomplete" data-text-field="name" data-bind="source: colors, value: autoCompleteValue"/>
        </li>
        <li>
            <h4>ComboBox:</h4>
            <select data-role="combobox" data-text-field="name" data-value-field="value" data-bind="source: colors, value: comboBoxValue"></select>
        </li>
        <li>
            <h4>DropDownList:</h4>
            <select data-role="dropdownlist" data-text-field="name" data-value-field="value" data-bind="source: colors, value: dropDownListValue"></select>
        </li>
        <li>
            <h4>DatePicker:</h4>
            <input data-role="datepicker" data-bind="value: datePickerValue" />
        </li>
        <li>
            <h4>TimePicker:</h4>
            <input data-role="timepicker" data-bind="value: timePickerValue" />
        </li>
        <li>
            <h4>NumericTextBox:</h4>
            <input data-role="numerictextbox" data-format="c" data-bind="value: numericTextBoxValue" />
        </li>
        <li>
            <h4>Slider:</h4>
            <input data-role="slider" data-bind="value: sliderValue" />
        </li>
        <li>
            <h4>TreeView</h4>
            <div data-role="treeview" data-drag-and-drop="true" data-bind="source: treeviewSource"></div>
        </li>
    </ul>
    <ul class="fieldlist">
        <li>
            <h4>MultiSelect:</h4>
            <select multiple="multiple" data-role="multiselect" data-text-field="name" data-value-field="value" data-bind="source: colors, value: multiSelectValue"></select>
        </li>
        <li>
            <h4>Grid</h4>
            <div data-role="grid" data-sortable="true" data-editable="true" data-columns='["Name", "Price", "UnitsInStock", {"command": "destroy"}]' data-bind="source: gridSource"></div>
        </li>
        <li>
            <h4>Splitter</h4>
            <div data-role="splitter" data-panes="[{size:'30%', collapsible:true},{size:'70%'}]">
                <div>Pane 1</div>
                <div>Pane 2</div>
            </div>
        </li>
        <li>
            <h4>TabStrip</h4>
            <div data-role="tabstrip" data-animation="false">
                <ul>
                    <li class="k-state-active">First</li>
                    <li>Second</li>
                </ul>
                <div>
                    <h4>First page:</h4>
                    Pick a time: <input data-role="timepicker" data-bind="value: timePickerValue"/>
                </div>
                <div>
                    <h4>Second page:</h4>
                    Time is: <span data-bind="text: displayTimePickerValue"></span>
                </div>
            </div>
        </li>
    </ul>
</div>
    

View model source code:

var viewModel = kendo.observable({
    autoCompleteValue: null,
    colors: [
        { name: "Red", value: "#f00" },
        { name: "Green", value: "#0f0" },
        { name: "Blue", value: "#00f" }
    ],
    displayAutoCompleteValue: function() {
        var autoCompleteValue = this.get("autoCompleteValue");
        return kendo.stringify(autoCompleteValue);
    },
    comboBoxValue: null,
    displayComboBoxValue: function() {
        var comboBoxValue = this.get("comboBoxValue");
        return kendo.stringify(comboBoxValue);
    },
    dropDownListValue: null,
    displayDropDownListValue: function() {
        var dropDownListValue = this.get("dropDownListValue");
        return kendo.stringify(dropDownListValue);
    },
    numericTextBoxValue: 10,
    displayNumericTextBoxValue: function() {
        var numericTextBoxValue = this.get("numericTextBoxValue");

        return kendo.toString(numericTextBoxValue, "c");
    },
    datePickerValue: new Date(),
    displayDatePickerValue: function() {
        var datePickerValue = this.get("datePickerValue");
        return kendo.toString(datePickerValue, "yyyy-MM-dd");
    },
    timePickerValue: new Date(),
    displayTimePickerValue: function() {
        var timePickerValue = this.get("timePickerValue");

        return kendo.toString(timePickerValue, "hh:mm:ss");
    },
    multiSelectValue: [],
    displayMultiSelectValue: function() {
        var multiSelectValue = this.get("multiSelectValue");
        return kendo.stringify(multiSelectValue);
    },
    gridSource: [
        { Name: "Chai", Price: 18.00, UnitsInStock: 39 },
        { Name: "Chang", Price: 19.00, UnitsInStock: 17 },
        { Name: "Mishi Kobe Niku", Price: 97.00, UnitsInStock: 29 }
    ],
    displayGridSource: function() {
        return stringify(this.get("gridSource"));
    },
    treeviewSource: kendo.observableHierarchy([
        { text: "Andrew", expanded: true, items: [
            { text: "Nancy" },
            { text: "Steve" }
        ] }
    ]),
    displayTreeviewSource: function() {
        return stringify(this.get("treeviewSource").toJSON());
    }
});

viewModel.autoCompleteValue = viewModel.colors[1];
viewModel.dropDownListValue = viewModel.colors[0];
viewModel.comboBoxValue = viewModel.colors[0];

kendo.bind($("table"), viewModel);