Telerik Forums
Kendo UI for jQuery Forum
2 answers
97 views
I have an Angular app using several Kendo items.  I upgraded my version of Kendo Professional from 2015.3.930 to 2016.1.125 and received the following error.
RangeError: Maximum call stack size exceeded
    at http://localhost:49373/lib/kendo-ui/js/kendo.all.min.js:89:17788
    at Array.forEach (native)
    at ee (http://localhost:49373/lib/kendo-ui/js/kendo.all.min.js:89:17772)
    at http://localhost:49373/lib/kendo-ui/js/kendo.all.min.js:89:17866
    at Array.forEach (native)
    at ee (http://localhost:49373/lib/kendo-ui/js/kendo.all.min.js:89:17772)
    at http://localhost:49373/lib/kendo-ui/js/kendo.all.min.js:89:17866
    at Array.forEach (native)
    at ee (http://localhost:49373/lib/kendo-ui/js/kendo.all.min.js:89:17772)
    at http://localhost:49373/lib/kendo-ui/js/kendo.all.min.js:89:17866 <div kendo-chart="" k-options="vm.barChartOptions" ng-show="this.dataItem.isVisible" class="col-lg-6 col-xs-12 k-block graph move ng-scope k-chart" id="AvgCostLB" style="margin: 0px; padding: 0px; position: relative;" data-uid="9ecf5252-bb66-44b6-b1db-099abcf53516" role="option" aria-selected="false" data-role="chart">

 

It seems to be occurring on when I try to display my listview of Kendo charts.  If I downgrade to the version of Kendo I had previously everything works.  Is it no longer possible to do this with Kendo?

Atanas Georgiev
Telerik team
 answered on 02 Feb 2016
1 answer
631 views
I'm trying to create a semicircle pie chart in Kendo UI. I couldn't find any examples of it online. Could somebody please help me figure out how to achieve it?
Dimiter Topalov
Telerik team
 answered on 02 Feb 2016
2 answers
166 views

I have a jquery mobile app that I'm converting to kendo-ui mobile.   It uses forms inside of collapsible's extensively.  Kendo UI doesn't like it.  I tested by copying the example mobile collapsible  index.html from examples to my app, works fine.  Then tried pasting various example mobile-forms.  They all fail, the page is a mess.

I guess I'll have to figure another way unless you guys have some solution?

Jim
Top achievements
Rank 1
 answered on 01 Feb 2016
2 answers
549 views

I’ve just started using your PDF-generation library and so far I am very pleased with the results. I have a couple of features I would love to see implemented though:

Keep-together: The page-splitting seems to work very well, but sometimes you have elements which you would prefer not to be split. Of course if this element is too large for a page, it should still be split. I would love to be able to have the possibility of using a class to indicate that an element should be entirely moved to the next page instead of splitting, unless it is already at the top of a page.

Scaling: While I don’t agree with your decision to treat px as pt (they are very clearly defined to be respectively 1/96 and 1/72 of an inch), at least your documentation on the issue is great. To get around it, I’ve used css-scaling, which seems to work fine. I do, however, encounter some issues with clipping on absolutely positioned elements, mainly headers/footers, but nothing I havn’t been able to solve. But it would be great if scaling was built into the API, it would solve the px/pt problem completely and might be useful in other scenarios where the rendered size should be different from print-size. Simply including “scale: 0.75” as a draw-dom option and then upscaling page-size and down-scaling all calculated sizes and positions in the output seems like it should be possible.

First page margin: This should be rather simple, but would be very useful I think. Often you don’t want as much info in the header of the first page, as it will include the title and subtitle of the document. If you could specify the margin for the first page separately, you could better handle this.

Headers on split tables: Splitting a table across multiple pages works great, but has one problem: the table header will only be shown on the first page (and presumably the footer will stay on the last page). There are two problems with this: firstly, showing the header on the second page will make the table much more usable for the reader. Secondly, the header often has column width directly applied to it. This width is not copied when split, so the second-page columns will be automatically sized. I realize this might be quite complicated and could probably also raise more problems, like how to indicate to the user that this is a split table, but I imagine many people would find it useful.

Force black/white only: I’ve run into an issue when trying to print a table with every other row highlighted in a slight blue-gray (background #f3f4f8, border #eaebef). This looks great in the browser and in the PDF, but when printed both the stribes and the borders are almost invisible. This is most likely a problem with the printer, but might just as well be a problem in a customers printer. Printing as B/W resolves the issue, so being able to force all colors to be converted would be great. “filter:grayscale(100%)” doesn’t seem to be respected (I suspect because computed styles are not affected by this).

Hopefully some or all of these could be possible to implement at some point. Otherwise, keep up the good work :)

Teknik
Top achievements
Rank 1
 answered on 01 Feb 2016
1 answer
394 views
Hi - I'm using the Kendo Grid and it is behaving strangely on mobile devices when being included in
an initially-hidden div.  I'm using Bootstrap and the latest version of Kendo UI.
 
The basic layout is this -- I have a button toward the bottom of a Bootstrap panel, and a div underneath that (still
inside the panel), which gets initialized to a kendo grid and has an initial style of "display:none;".
The button toggles the display of the grid.  This works perfectly on desktop browsers.
 
On mobile devices a light grey renderding of the space for the grid shows up (see the "HiddenDivs" image).  When I
click the "Show / Hide" button, the grid shows up nicely (see the "showing data" image).
 
What can I do to prevent the light grey showing when the grid is hidden?
 
Here is the HTML code:
<div id="paymentHistoryButtons" style="padding-bottom: 30px;">
    <button class="btn btn-xs btn-info pull-right" onclick="viewPaymentHistory();">Show / Hide History</button>
</div>
<div id="PaymentHistoryGrid" style="display: none;"></div>
Here is the javascript that sets up the grid -- the "getPaymentHistory" function is called in document.ready.

function getPaymentHistory() {
        $('#PaymentHistoryGrid').html('');
 
        var consumerId = @NwpSession.SelectedAccount.ConsumerId;
        var merchantId = @NwpSession.SelectedAccount.PropertyMerchantId;
 
        var window = $("#window").kendoWindow({
            title: "Cancel Payment",
            visible: false, //the window will not appear before its .open method is called
            width: "400px",
            height: "200px",
        }).data("kendoWindow");
        var windowTemplate = kendo.template($("#windowTemplate").html());
 
        var rot = OneResidentUtilities.getResourceOwnerToken();
 
        $("#PaymentHistoryGrid").kendoGrid({
            columns: [
            { title: 'Date', field: 'DueDate', type: 'date', format: '{0:MM/dd/yyyy}' },
            { title: 'Tracking Number', field: 'TrackingNumber', width: 125},
                { title: 'Amount', field: 'Amount', format: '{0:C}' },
                { title: 'Status', field: 'PaymentStatusString' },
                {
                    command: {
                        name: 'cancelButton',
                        text: 'Cancel',
                        click: function(e) {
                            var tr = $(e.target).closest("tr"); //get the row for deletion
                            var data = this.dataItem(tr); //get the row data so it can be referred later
                            window.content(windowTemplate(data)); //send the row data object to the template and render it
                            window.open().center();
 
                            $("#yesButton").click(function() {
                                cancelPayment(data);
                                window.close();
                            });
                            $("#noButton").click(function() {
                                window.close();
                            });
                        },
                        className: 'btn btn-primary btn-xs'
                    }
                }
            ],
            dataSource: {
                transport: {
                    read: {
                        url: 'https://' + OneResidentUtilities.getApiRoot() + '/Payments/retrieval/paymenthistory?consumerId=' + consumerId +
                            '&merchantId=' + merchantId,
                        headers: {
                            'Authorization': 'Bearer ' + rot
                        },
                        method: 'GET',
                        dataType: 'json'
                    }
                },
                sort: { field: "DueDate", dir: "desc" },
            },
            dataBound: function(e) {
                gridDataBound(e);
            },
            editable: true,
            mobile: true,
            theme: 'bootstrap',
            sortable: true,
            filterable: true,
            scrollable: true,
        });
    }
 
    function viewPaymentHistory() {
        $('#PaymentHistoryGrid').toggle();
    }
 
    function gridDataBound(e) {
        $('#lastPaymentTable').hide();
        $('#paymentHistoryLoader').show();
        var grid = $("#PaymentHistoryGrid").data("kendoGrid");
        var gridData = grid.dataSource.view();
        if (gridData.length === 0) {
            $('#paymentHistoryButtons').hide();
            $('#paymentHistoryGrid').hide();
            $('#noPaymentHistoryFound').show();
            $('#paymentHistoryLoader').hide();
        }
        else {
            $('#noPaymentHistoryFound').hide();
            var cancelButtonColumn = grid.columns[grid.columns.length - 1];
            var showCancelColumn = false;
            for (var i = 0; i < gridData.length; i++) {
                var currentUid = gridData[i].uid;
                if (gridData[i].PaymentStatus != 1) {
                    var currentRow = grid.table.find("tr[data-uid='" + currentUid + "']");
                    var cancelButton = $(currentRow).find(".k-grid-cancelButton");
                    cancelButton.hide();
                } else {
                    showCancelColumn = true;
                }
            }
            if (showCancelColumn) {
                grid.showColumn(cancelButtonColumn);
            } else {
                grid.hideColumn(cancelButtonColumn);
            }
            var lastPayment = gridData[0];
            if (lastPayment) {
                $('#lastPaymentDate').html(new Date(lastPayment.DueDate).toLocaleDateString());
                $('#lastTrackingNumber').html(lastPayment.TrackingNumber);
                $('#lastAmount').html('$' + lastPayment.Amount.toFixed(2));
                $('#lastStatus').html(lastPayment.PaymentStatusString);
                if (lastPayment.PaymentStatusString === "Scheduled") {
                    $('#cancelLastPayment').show();
                }
            }
            $('#paymentHistoryLoader').hide();
            $('#lastPaymentTable').show();
        }       
    }

 
Dimo
Telerik team
 answered on 01 Feb 2016
1 answer
727 views

I've created a demo page in JSfiddle, where you can see I've tried to use the number format and filterable to do the filtering for a numeric column. But if the data is suppose 0.23252 and my format condition "{0:n3}" and in filterable if I use the below function then the filtering is not working anymore. Please help. 

{
                ui: function (element) {
                    element.kendoNumericTextBox({
                        format: "n3",
                        decimals: 3
                    });
                }
 }

 http://jsfiddle.net/5EHqL/71/

 

Thanks,

Megha

Konstantin Dikov
Telerik team
 answered on 01 Feb 2016
1 answer
114 views

Hello there,

Recently I was working on the MultiSelect control, because we can select a lot of items from the drop down list, so in the tags container it will display these tags in several rows. I know there are two modes to render the tags, single and multiple, but we just want use multiple and if there are more than 5 selected items, we just render 5, then add an additional button such as "more" at the end of these selected tags.

 

There are tag template and item template to render customize style, but there is not a container template we can change.

how to implement this?

 

 

Georgi Krustev
Telerik team
 answered on 01 Feb 2016
2 answers
131 views

How do you add a custom tooltip for specific columns in the grid?
For example, one my columns has the following grid schema setting:

item1Description: { editable: true, validation: { required: true }, defaultValue: '' }
 

When there is no value entered, the error message in the tooltip is "item1Description is required". How can I make it show a custom description like "Item 1 Description is required"?

Boyan Dimitrov
Telerik team
 answered on 01 Feb 2016
1 answer
211 views

I have a Angular grid setup with locked columns (so there are scrolling), resizable = true, and fixed column width. However, occasionally the content is longer than the column width. I want to programmatically call autoFitColumn() method to make the columns to fit the content. I don't see any event to signal grid render complete. Where is a good place to call autoFitColumn()?

I tried dataBound event, but I use template with angular expression in it. At point of dataBound, the angular expression are not evaluated yet, so the calling autoFitColumn in this event will actually make things worse.

 

Best,

 

Ama

Konstantin Dikov
Telerik team
 answered on 01 Feb 2016
1 answer
153 views

Hello,

I've few problems with Kendo UI diagram control in my Angular 1.4 project. In my case I use diagram to draw an organization chart from the top to the bottom.

1. Is it possible to customize connectors (output) behavior to be drawn always from the the bottom (see attachment)? Now I've a badlook situation that connectors output random from every side.

2. How to restrict the pan/scroll area to not to move the diagram outside current viewport.

3. I want to load diagram `kendoDiagram(this.kendoDiagramOptions)` asynchronously by $q (Angular Promise) or rxjs. When I simply put this to the promise, diagram initialization seems to block whole application until its done. How to bypass this behavior.

Best regards.

Hello,
I've few problems with Kendo UI diagram control in my Angular 1.4 project. In my case I use diagram to draw an organization chart from the top to the bottom.
1. Is it possible to customize connectors (output) behavior to be drawn always from the the bottom (see attachment)? Now I've a badlook situation that connectors output random from every side.
2. How to restrict the pan/scroll area to not to move the diagram outside current viewport.
3. I want to load diagram `kendoDiagram(this.kendoDiagramOptions)` asynchronously by $q (Angular Promise) or rxjs. When I simply put this to the promise, diagram initialization seems to block whole application until its done. How to bypass this behavior.
Best regards.
Hello,
I've few problems with Kendo UI diagram control in my Angular 1.4 project. In my case I use diagram to draw an organization chart from the top to the bottom.
1. Is it possible to customize connectors (output) behavior to be drawn always from the the bottom (see attachment)? Now I've a badlook situation that connectors output random from every side.
2. How to restrict the pan/scroll area to not to move the diagram outside current viewport.
3. I want to load diagram `kendoDiagram(this.kendoDiagramOptions)` asynchronously by $q (Angular Promise) or rxjs. When I simply put this to the promise, diagram initialization seems to block whole application until its done. How to bypass this behavior.
Best regards.
Hello,
I've few problems with Kendo UI diagram control in my Angular 1.4 project. In my case I use diagram to draw an organization chart from the top to the bottom.
1. Is it possible to customize connectors (output) behavior to be drawn always from the the bottom (see attachment)? Now I've a badlook situation that connectors output random from every side.
2. How to restrict the pan/scroll area to not to move the diagram outside current viewport.
3. I want to load diagram `kendoDiagram(this.kendoDiagramOptions)` asynchronously by $q (Angular Promise) or rxjs. When I simply put this to the promise, diagram initialization seems to block whole application until its done. How to bypass this behavior.
Best regards.
Hello,
I've few problems with Kendo UI diagram control in my Angular 1.4 project. In my case I use diagram to draw an organization chart from the top to the bottom.
1. Is it possible to customize connectors (output) behavior to be drawn always from the the bottom (see attachment)? Now I've a badlook situation that connectors output random from every side.
2. How to restrict the pan/scroll area to not to move the diagram outside current viewport.
3. I want to load diagram `kendoDiagram(this.kendoDiagramOptions)` asynchronously by $q (Angular Promise) or rxjs. When I simply put this to the promise, diagram initialization seems to block whole application until its done. How to bypass this behavior.
Best regards.
Hello,
I've few problems with Kendo UI diagram control in my Angular 1.4 project. In my case I use diagram to draw an organization chart from the top to the bottom.
1. Is it possible to customize connectors (output) behavior to be drawn always from the the bottom (see attachment)? Now I've a badlook situation that connectors output random from every side.
2. How to restrict the pan/scroll area to not to move the diagram outside current viewport.
3. I want to load diagram `kendoDiagram(this.kendoDiagramOptions)` asynchronously by $q (Angular Promise) or rxjs. When I simply put this to the promise, diagram initialization seems to block whole application until its done. How to bypass this behavior.
Best regards.
Hello,
I've few problems with Kendo UI diagram control in my Angular 1.4 project. In my case I use diagram to draw an organization chart from the top to the bottom.
1. Is it possible to customize connectors (output) behavior to be drawn always from the the bottom (see attachment)? Now I've a badlook situation that connectors output random from every side.
2. How to restrict the pan/scroll area to not to move the diagram outside current viewport.
3. I want to load diagram `kendoDiagram(this.kendoDiagramOptions)` asynchronously by $q (Angular Promise) or rxjs. When I simply put this to the promise, diagram initialization seems to block whole application until its done. How to bypass this behavior.
Best regards.
T. Tsonev
Telerik team
 answered on 01 Feb 2016
Narrow your results
Selected tags
Tags
Grid
General Discussions
Charts
Data Source
Scheduler
DropDownList
TreeView
MVVM
Editor
Window
DatePicker
Spreadsheet
Upload
ListView (Mobile)
ComboBox
TabStrip
MultiSelect
AutoComplete
ListView
Menu
Templates
Gantt
Validation
TreeList
Diagram
NumericTextBox
Splitter
PanelBar
Application
Map
Drag and Drop
ToolTip
Calendar
PivotGrid
ScrollView (Mobile)
Toolbar
TabStrip (Mobile)
Slider
Button (Mobile)
Filter
SPA
Drawing API
Drawer (Mobile)
Globalization
LinearGauge
Sortable
ModalView
Hierarchical Data Source
Button
FileManager
MaskedTextBox
View
Form
NavBar
Notification
Switch (Mobile)
SplitView
ListBox
DropDownTree
PDFViewer
Sparkline
ActionSheet
TileLayout
PopOver (Mobile)
TreeMap
ButtonGroup
ColorPicker
Pager
Styling
Chat
MultiColumnComboBox
Dialog
DateRangePicker
Checkbox
Timeline
Drawer
DateInput
ProgressBar
MediaPlayer
ImageEditor
TextBox
OrgChart
Accessibility
Effects
PivotGridV2
ScrollView
Switch
TextArea
BulletChart
Licensing
QRCode
ResponsivePanel
Wizard
CheckBoxGroup
Localization
Barcode
Breadcrumb
Collapsible
MultiViewCalendar
Touch
RadioButton
Stepper
Card
ExpansionPanel
Rating
RadioGroup
Badge
Captcha
Heatmap
AppBar
Loader
Security
TaskBoard
Popover
DockManager
TimePicker
FloatingActionButton
CircularGauge
ColorGradient
ColorPalette
DropDownButton
TimeDurationPicker
ToggleButton
BottomNavigation
Ripple
SkeletonContainer
Avatar
Circular ProgressBar
FlatColorPicker
SplitButton
Signature
Chip
ChipList
VS Code Extension
AIPrompt
PropertyGrid
Sankey
Chart Wizard
OTP Input
SpeechToTextButton
InlineAIPrompt
StockChart
ContextMenu
DateTimePicker
RadialGauge
ArcGauge
AICodingAssistant
SmartPasteButton
PromptBox
SegmentedControl
+? more
Top users last month
Chester
Top achievements
Rank 1
Iron
Simon
Top achievements
Rank 1
Iron
Douglas
Top achievements
Rank 2
Iron
Iron
SUNIL
Top achievements
Rank 3
Iron
Iron
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Chester
Top achievements
Rank 1
Iron
Simon
Top achievements
Rank 1
Iron
Douglas
Top achievements
Rank 2
Iron
Iron
SUNIL
Top achievements
Rank 3
Iron
Iron
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?