jQWidgets Forums

jQuery UI Widgets Forums Grid Renderstatusbar not fired (knockout)

This topic contains 3 replies, has 2 voices, and was last updated by  Peter Stoev 11 years, 11 months ago.

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
  • Renderstatusbar not fired (knockout) #18371

    Makla
    Participant

    How can I get this to work:

    <!DOCTYPE html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Pametna hiša</title>
    <script src="Framework/Scripts/jquery-1.9.1.min.js"></script>
    <script src="Framework/Scripts/date.format.js"></script>
    <script src="Framework/Scripts/knockout-2.2.1.js"></script>
    <script src="Framework/Scripts/FormModel.js"></script>
    <script src="Framework/Scripts/jqwidgets/jqx-all.js"></script>
    <script type="text/javascript" src="Framework/Scripts/jqwidgets/jquery.global.js"></script>
    <link rel="stylesheet" href="Framework/Styles/jqx.base.css" type="text/css" />
    <link rel="stylesheet" href="Framework/Styles/jqx.ui-sunny.css" type="text/css" />
    <script type="text/javascript">
    $(document).ready(function () {
    var initialData = [
    { name: "Well-Travelled Kitten", sales: 352, price: 75.95 },
    { name: "Speedy Coyote", sales: 89, price: 190.00 },
    { name: "Furious Lizard", sales: 152, price: 25.00 },
    { name: "Indifferent Monkey", sales: 1, price: 99.95 },
    { name: "Brooding Dragon", sales: 0, price: 6350 },
    { name: "Ingenious Tadpole", sales: 39450, price: 0.35 },
    { name: "Optimistic Snail", sales: 420, price: 1.50 }
    ];
    var GridModel = function (items) {
    this.items = ko.observableArray(items);
    };
    ko.applyBindings(new GridModel(initialData));
    });
    </script>
    </head>
    <body class='default'>
    <div id='jqxWidget'>
    <div data-bind="jqxGrid:
    {
    source: items,
    autoheight: true,
    showstatusbar: true,
    renderstatusbar: function (statusbar)
    {
    // appends buttons to the status bar.
    var container = $('<div ></div>');
    var addButton = $('<div ><span >Add</span></div>');
    container.append(addButton);
    statusbar.append(container);
    },
    columns: [
    { text: 'Name', dataField: 'name', width: 200 },
    { text: 'Sales', dataField: 'sales', width: 200, cellsalign: 'right' },
    { text: 'Price', dataField: 'price', width: 200, cellsformat: 'c2', cellsalign: 'right' }
    ]}">
    </div>
    </div>
    </body>
    </html>

    The “add” text is never added to status bar. No error is raised, nothing.

    Renderstatusbar not fired (knockout) #18392

    Peter Stoev
    Keymaster

    Hi Makla,

    The “renderstatusbar” property represents a callback function and as such it is not supported in the built-in KO integration of jqxGrid.

    Best Regards,
    Peter Stoev

    jQWidgets Team
    http://www.jqwidgets.com

    Renderstatusbar not fired (knockout) #18464

    Makla
    Participant

    Understand. I also try to manually reference function on document load:

    <!DOCTYPE html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Pametna hiša</title>
    <script src="Framework/Scripts/jquery-1.9.1.min.js"></script>
    <script src="Framework/Scripts/date.format.js"></script>
    <script src="Framework/Scripts/knockout-2.2.1.js"></script>
    <script src="Framework/Scripts/FormModel.js"></script>
    <script src="Framework/Scripts/jqwidgets/jqx-all.js"></script>
    <script type="text/javascript" src="Framework/Scripts/jqwidgets/jquery.global.js"></script>
    <link rel="stylesheet" href="Framework/Styles/jqx.base.css" type="text/css" />
    <link rel="stylesheet" href="Framework/Styles/jqx.ui-sunny.css" type="text/css" />
    <script type="text/javascript">
    $(document).ready(function () {
    var initialData = [
    { name: "Well-Travelled Kitten", sales: 352, price: 75.95 },
    { name: "Speedy Coyote", sales: 89, price: 190.00 },
    { name: "Furious Lizard", sales: 152, price: 25.00 },
    { name: "Indifferent Monkey", sales: 1, price: 99.95 },
    { name: "Brooding Dragon", sales: 0, price: 6350 },
    { name: "Ingenious Tadpole", sales: 39450, price: 0.35 },
    { name: "Optimistic Snail", sales: 420, price: 1.50 }
    ];
    var GridModel = function (items) {
    this.items = ko.observableArray(items);
    };
    ko.applyBindings(new GridModel(initialData));
    $('#jqxGrid').jqxGrid({ renderstatusbar: function(statusbar)
    {
    var container = $('<div ></div>');
    var addButton = $('<div ><span >Add</span></div>');
    container.append(addButton);
    statusbar.append(container);
    }});
    });
    </script>
    </head>
    <body class='default'>
    <div id='jqxWidget'>
    <div id="jqxGrid" data-bind="jqxGrid:
    {
    source: items,
    autoheight: true,
    showstatusbar: true,
    columns: [
    { text: 'Name', dataField: 'name', width: 200 },
    { text: 'Sales', dataField: 'sales', width: 200, cellsalign: 'right' },
    { text: 'Price', dataField: 'price', width: 200, cellsformat: 'c2', cellsalign: 'right' }
    ]}">
    </div>
    </div>
    </body>
    </html>

    but it is not working either.

    Renderstatusbar not fired (knockout) #18465

    Peter Stoev
    Keymaster

    Hi Makla,

    I suppose that you can do it as in the StatusBar sample. The KO can be handled through the jqxDataAdapter in that case.

    Best Regards,
    Peter Stoev

    jQWidgets Team
    http://www.jqwidgets.com

Viewing 4 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic.