Telerik Forums
Kendo UI for jQuery Forum
2 answers
124 views
I have a ListView and Pager bound to a DataSource that gets its data from a remote url (i.e. using transport.read).  For the sake of this example we'll call the objects returned by the url and bound to the DataSource, "DataSourceObjects".  It works as expected.  

However, the ListView exists on a webpage that uses ajax to update other elements on the webpage (Call #1).  When those other elements update, the ListView must update and display data from a different page of the DataSource, based on the new values of those elements.  This means a call to DataSource.page() and thus another round-trip to the server (Call #2).  I'd like to combine Call #1 and Call #2 into one call.  I should be able to do this by sending the DataSourceObjects for the new page during Call#1 and then manually updating the DataSource with those new DataSourceObjects, bypassing the DataSource.page() call and bypassing transport.read().  I'd also need to manually update the page being displayed by the Pager attached to the DataSource, again without it making another call to the server.

I've done a lot of looking around to see how this could be accomplished but haven't found an example of what I'm describing.  I've gotten so far as to update the data being displayed by the ListView by calling DataSource.data(DataSourceObjects), but I can't get the Pager to display the right page number.  I read a suggestion to try DataSource.query({ page: NewPageNumber }) but that doesn't seem to work.

Can you tell me how to accomplish what I've described?  Thanks.


UPDATE:
I was able to use the get the .query() call working as described here (http://www.kendoui.com/forums/framework/data-source/setiing-pagesize-dynamically-causing-read-.aspx).  Calling manuallyUpdateDataSource() seems to update the data as I want it to, but the .query() line causes a server hit, which I don't want.
var myDataSource = new kendo.data.DataSource({
            pageSize: 10,
            serverPaging: true,
            transport: {
                read: {
                    url: 'http://mydataurl/',
                    headers: {
                        'X-Requested-With': 'XMLHttpRequest'  
                    }
                },
                parameterMap: function (data, type) {
                     // Code for parameterMap.
                }
            },
            schema: {
                data: 'Data',
                total: 'Total'
            },
        });
 
function manuallyUpdateDataSource(dataSourceObjects) {
     myDataSource.data(dataSourceObjects);
     myDataSource.query({ pageSize: 10, page: 3 });   // setting to page 3 just for testing.
}
Don
Top achievements
Rank 1
 answered on 04 Apr 2013
3 answers
116 views
Hi,

I have tested your Multi Select widget 
It seems to me there is a bug there :
When navigating to http://demos.kendoui.com/beta/web/multiselect/serverfiltering.html
I can see that all  products are being
downloaded to the client when the page just loads.
I would expect that no data will be downloaded to the client, and only the relevant products will be fetched as I type inside the input area (fetching seems to happen , but since all products have already
being downloaded at first hit , there is no use to download them again from the
server).
In the above sample 74 products were downloaded to the client when the widget have been loaded...

Alexander Valchev
Telerik team
 answered on 04 Apr 2013
3 answers
115 views
Hi,

We have converted the the treeview from telerik MVC to Kendo UI looks fine but how should we do operations on it after the tree is loaded ? Previously we used OnLoad event in telerik to do some operations after the tree is loaded but in Kendo no Onload event is present so we used document.ready function but it fires before the tree is loaded due to which the few steps do not work.
Other question is regarding the Kendo treeview expand and collapse animation. We need to show the + and - signs instead os the small triangle, how shall we achieve this ?

Thanks..
Dimiter Madjarov
Telerik team
 answered on 04 Apr 2013
3 answers
216 views
I'm running into this issue where the tooltip remains on the chart if I mouseover from one to another quickly. Here's a JSFiddle where the occurrence can be tested, and a screenshot of the issue.

http://jsfiddle.net/Dysch/

In our internal application, we have several charts, up to 8 on a page and this occurrence has more tooltips that remain. Screencast of issue happening in our application.

http://screencast.com/t/ObzneNk53r8

Thanks for any info and help on how to fix
David
Top achievements
Rank 1
 answered on 04 Apr 2013
2 answers
797 views
Hello:

I have a layout page with 4 absolute positioned divs, Header 1, Header 2, Content, and Footer.
Header 1 & 2, and Footer are sticky divs, only the Content div can scroll vertically.

I put the Menu on Header 1, the expanded menu is hidden behind the Header 2.
Here is my html layout

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <link href="styles/kendo.common.min.css" rel="stylesheet" />
    <link href="styles/kendo.default.min.css" rel="stylesheet" />
    <link href="styles/layout.css" rel="stylesheet" />
    <script src="js/jquery.min.js"></script>
    <script src="js/kendo.all.min.js"></script>
</head>
<body>
<div id="secHeader1">
    header 1
    <div style="width: 120px; float:right;">
        <ul id="menu">
            <li>
                Products
                <ul>
                    <li>Furniture</li>
                    <li>Decor</li>
                    <li>Storage</li>
                    <li>Lights</li>
                </ul>
            </li>
        </ul>
        <script>
            $(document).ready(function() {
                $("#menu").kendoMenu();
            });
        </script>
    </div>
</div>
<div id="secHeader2">
    header 2
</div>
<div id="secContent">
    content body
</div>
<div id="secFooter">
    footer
</div>
 
</body>
</html>


and here is the Layout.css

* {margin:0; padding:0;}
html, body, form {margin:0; padding:0; height: 100%; color:#ffffff;}
html>body>form {position:absolute; width:100%;}
 
 
#secHeader1 {
position:absolute; overflow:hidden;  
width:100%; height:75px;
left:0; top:0px; background-color:#8a0000;}
 
#secHeader2 {
position:absolute; overflow:hidden;  
width:100%; height:75px;    
left:0; top:75px; background-color:#666666;}
 
#secContent {
position:absolute; overflow:hidden;  
width:100%;                 
left:0; top:150px; bottom:31px; background-color:#0c0c0c;}
 
#secFooter  {
position:absolute; overflow:hidden;  
width:100%; height:30px;    
left:0; bottom:0;                  
background-color:#606060; border-top:1px solid #a0a0a0;}
I've tried to set z-index on secHeader1, .k-menu .k-animation-container, etc, none of them worked.

Please advise.
Thank you
HSO
Top achievements
Rank 2
 answered on 04 Apr 2013
8 answers
343 views
Hi Support

I have this very annoying issue using the following Button:
<a id="btb1" data-role="button" style="background-color: green; width:90%;" data-click="action" data-name="Stuff & Stuff" data-id="1" data-unit="Unit" data-unitid="1" class="km-button">
 <span class="km-text">DONT CLICK ME</span>
</a>
When clicking on the text in the Button, the Button changes to its hover-style but the action is not happening. Clicking on the outside of the text fires the click-event properly. The span around the text is generated automaticly.

I'm now trying to find a workaround, but this needs a fix asap - for sure.
Thanks
Alexander Valchev
Telerik team
 answered on 04 Apr 2013
2 answers
209 views
Hi everyone, 

I'm trying to handle various grid events.   The grid is setup to use in-line mode editing.  For the most part, everything works good, except for the cancel event on the grid (which should be fire when the user cancels in edit mode in the grid).  Although the documentation lists it as a valid event (http://docs.kendoui.com/api/web/grid#events-cancel),  it is not firing for me.  The change, remove, and save events all fire as expected.  Is this a bug or is something special about this Cancel event?

my grid initialization looks like this:
 
       <table id="jobs" 
               data-role="grid" 
               data-bind="source: jobsList, events: { change: gridChange, cancel: gridCancel, remove: gridRemove, save: gridSave}"
               data-columns="[{ field: 'Id', width: 50, title: 'Id', filterable: true}, { field: 'Name', width: 80, title: 'Name', filterable: true}, { field: 'Description', width: 150, title: 'Description', filterable: true},{ command: ['edit','destroy'], title: '' }]"  
               data-toolbar="[{ name: 'create', text: 'Add new job'}]"
               data-pageable="true"
               data-editable="{mode: 'inline', confirmation: 'Are you sure you want to delete this job?  It will not be recoverable'}"
               data-sortable="true"
               data-column-menu="false"
               data-resizable="true"
               data-selectable="true"
               data-filterable="{ extra: false, operators: { string: { startswith: 'Starts with', eq: 'same as',  neq: 'different' }, number: {eq: '==',  neq: '!=' , gt: '>', lt: '<'}}}"
            >
        </table>

and then i have an observable that the gird gets bound to that implements these methods:

       gridChange: function (eventArgs) {
            //do something
        }, 
        gridRemove: function(eventArgs) {
            //do something 
        }, 
        gridCancel: function(eventArgs) {
            //do something
        },
        gridSave: function(eventArgs) {
            //do something
        }

Again, the change, save, and remove events fire fine but the cancel does not fire.

Any help would be greatly appreciated,

thanks,
Florence
Florence
Top achievements
Rank 1
 answered on 04 Apr 2013
1 answer
185 views
Hello all,

I have the following below which is my detail template for my main grid.   The tab attachments has a grid in it.  I want to place an update control after the detail attachments grid.  I tried adding it in a few places but I get an error "Invalid Template" anywhere I try and place it.  Below is the code for the detail template and also below that the form I have on another view that works fine.:

<script id="template" type="text/kendo-tmpl">
@(Html.Kendo().TabStrip()
.Name("tabStrip_#=CustomerNumber#")
.SelectedIndex(0)
.Animation(animation => animation.Open(open => open.Fade(FadeDirection.In)))
.Items(items =>
{
items.Add().Text("Attachments").Content(@<text>
@(Html.Kendo().Grid<ABC.DataModel.Document.DocumentModel>()
.Name("grid_#=CustomerNumber#")
.Columns(columns =>
{
columns.Bound(p => p.DocumentType).Width(40).Title("Type").ClientTemplate("\\#=RenderImage(data)\\#");
columns.Bound(p => p.DocumentName).ClientTemplate(@Html.ActionLink("\\#=DocumentName\\#", "DownloadFile",
new { ID = "\\#=DocID\\#", fileRef = "\\#=FileRef\\#", fileName = "\\#=DocumentNameExt\\#" }).ToHtmlString());
columns.Bound(p => p.ModifiedDate).Format("{0:M/dd/yyyy h:mm tt}").Title("Modified");
columns.Bound(p => p.ModifiedBy).Title("Modified By");
columns.Bound(p => p.LatestVersion).Title("Latest Version");
})
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("CustomerAttachments_Read", "Customers", new { library = "Customers", folder = "#=CustomerNumber#" }))
)
.Sortable()
.ToClientTemplate())
</text>
);
})
.ToClientTemplate()
)
</script>

//I want to place this below the grid in the tab also not sure how to pass two params id and folder.  Below the sample only has id.

@(Html.Kendo().Upload()
.Name("attachments")
.Async(async => async
 .SaveUrl(@Url.Action("FileUpload"))
.AutoUpload(true)
 ).Events(e => e
.Upload(@<text>
function(e) {
e.data = { id: $("#Id").val() };
}
</text>)
)
)

Petur Subev
Telerik team
 answered on 04 Apr 2013
0 answers
204 views
Hello,

The Upload official release (Q1 2013 and earlier) is not compatible with jQuery 1.9.x

The problem is limited to asynchronous mode only. An error is thrown when the server returns an empty response. As a workaround, you can return an empty JSON object with content type set to "text/plain".

Users are urged to update to the latest hotfix version (2013.1.327+) as part of the jQuery upgrade process.

Apologies for the caused inconvenience.
Kendo UI
Top achievements
Rank 1
 asked on 04 Apr 2013
1 answer
141 views
Hi,

I'm using the mvc wrappers and getting a javascript error when clicking the create button.  I'm using jquery 1.9.1, ive tried 1.8.1 and get same error.  Here's my razor markup.  Anyone know whats going on here?  

The js error is in the image but the message is "Uncaught TypeError: Cannot read property 'Name' of undefined.

@(Html.Kendo().Grid<PosAdmin.Areas.Config.Models.ConfigProject>()
    .Name("grid")
    .Columns(c =>
    {
        c.Bound(m => m.Description);
        c.Bound(m => m.Id);
        c.Bound(m => m.Team.Name);
        c.Bound(m => m.Name);
        c.Bound(m => m.Team.Description);
        c.Command(command => { command.Edit(); command.Destroy(); }).Width(160);
    })
    .ToolBar(toolbar => toolbar.Create())
    .Editable(editable => editable.Mode(GridEditMode.InLine))
    .Pageable()
    .Sortable()
    .Scrollable()
    .HtmlAttributes(new { style = "height:430px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Model(model => model.Id(p => p.Id))
        .Create(update => update.Action("CreateProject", "ConfigEditor",new {Area="Config"}))
        .Read(read => read.Action("ProjectsRead","ConfigEditor",new {Area="Config"}))
        .Update(update => update.Action("EditingInline_Update", "Grid"))
        .Destroy(update => update.Action("EditingInline_Destroy", "Grid"))
    )
)
Petur Subev
Telerik team
 answered on 04 Apr 2013
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
BulletChart
Licensing
QRCode
ResponsivePanel
TextArea
Wizard
CheckBoxGroup
Localization
Barcode
Breadcrumb
Collapsible
MultiViewCalendar
Touch
RadioButton
Stepper
Card
ExpansionPanel
Rating
RadioGroup
Badge
Captcha
Heatmap
AppBar
Loader
Security
TaskBoard
Popover
DockManager
FloatingActionButton
CircularGauge
ColorGradient
ColorPalette
DropDownButton
TimeDurationPicker
ToggleButton
TimePicker
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
+? more
Top users last month
Bohdan
Top achievements
Rank 3
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Elliot
Top achievements
Rank 1
Iron
Iron
Iron
Sunil
Top achievements
Rank 1
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Bohdan
Top achievements
Rank 3
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Elliot
Top achievements
Rank 1
Iron
Iron
Iron
Sunil
Top achievements
Rank 1
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?