Telerik Forums
Kendo UI for jQuery Forum
1 answer
537 views
I have 2 grids on top of one another. Users may select items from Grid A (raw data), push a button, and those items will be copied to Grid B (benchmarks). Users may also reorder columns in Grid A, but I'd like to move the columns in Grid B to match when Grid A's move event is complete.

Is this possible out of the box? If user moves column in Grid A, does that change the DataSource metadata? If so, can I just copy the schema & columns from Grid A to Grid B, or is there something better I can be using?
Nikolay Rusev
Telerik team
 answered on 24 Sep 2012
0 answers
243 views
Hello... First of all thanks to Kendo team for providing kendo controls ..were much helpful to me and my team. I have less experience on client side scripting and I thought I will use kendo grid to start with presentation of data.. Of late I came across this problem.....would appreciate your help in advance....

I am trying to bind json objects to kendo grid and really not sure if the binding is happening in the background. Json request returns the data properly which I can check it from the firebug but binding does not happen. Just to check if it is trying to bind or not .... I tried to give a wrong field name still I don't see any reference error for the wrong column name. I have attached databound event to the grid with alert message and it always alerts the message irrespective of grid binding. Can you please check the code syntax below and let me know if there is anything that I am missing. Also, can you please let me know how to troubleshoot these kind of problems in future...

function BindData() {
                    sharedDS.transport.options.read.data = {
                        cpid: $find("<%= cboContentProviderDetails.ClientID %>").get_value(),
                        startdatefrom: FormatToProperDate($find("<%= rdpStartDateFrom.ClientID %>")),
                        startdateto: FormatToProperDate($find("<%= rdpStartdateTo.ClientID %>")),
                        enddatefrom: FormatToProperDate($find("<%= rdpEndDateFrom.ClientID %>")),
                        enddateto: FormatToProperDate($find("<%= rdpEndDateTo.ClientID %>")),
                        alstatus: $find("<%= rdoStatus.ClientID %>").get_value(),
                        isexclusive: $find("<%= cboTypeOfCopyright.ClientID %>").get_value(),
                        territories: '',
                        customers: '',
                        services: '',
                        agreementid: $find("<%= cboAgreements.ClientID %>").get_value(),
                        allterritories: $('input[id$=chkAllTerritories]').is(':checked'),
                        allservices: $('input[id$=chkAllCustomers]').is(':checked'),
                        allcustomers: $('input[id$=chkAllServices]').is(':checked'),
                        alname: $('input[id$=txtName]').val(),
                        remdaysfrom: $('input[type=text][id$=txtNumericDaysFrom]').val(),
                        remdaysto: $('input[type=text][id$=txtNumericDaysTo]').val(),
                        contentid: $('input[type=text][id$=txtContentCP]').val()
                }
                sharedDS.page(1);
            }
            $("#comboBox").kendoComboBox({
                dataTextField: "text",
                dataValueField: "value",

                change: function (e) {
                    var grid = $("#grid").data("kendoGrid");
                    grid.dataSource.pageSize(parseInt(this.value(), 10));
                }
            });

            var sharedDS = null;



            function BindGrid() {    
            var _Url = '<%=  ResolveUrl("~/Forms/AuthorizationLetter/SearchAuthorizationLetterHandler.ashx?requesttype=Search") %>';       
            sharedDS = new kendo.data.DataSource({  
                     
                    schema: {
                     data: "rows",
                     total: "total",
                      model: {
                            id: "ALId"
                            }
                 },
                    serverPaging : true,   
                    pageSize: 20,                     
                        transport: {
                            read: { url: _Url,
                                datatype: 'json',
                                data: {
                                    cpid: $find("<%= cboContentProviderDetails.ClientID %>").get_value(),
                                    startdatefrom: FormatToProperDate($find("<%= rdpStartDateFrom.ClientID %>")),
                                    startdateto: FormatToProperDate($find("<%= rdpStartdateTo.ClientID %>")),
                                    enddatefrom: FormatToProperDate($find("<%= rdpEndDateFrom.ClientID %>")),
                                    enddateto: FormatToProperDate($find("<%= rdpEndDateTo.ClientID %>")),
                                    alstatus: $find("<%= rdoStatus.ClientID %>").get_value(),
                                    isexclusive: $find("<%= cboTypeOfCopyright.ClientID %>").get_value(),
                                    territories: '',
                                    customers: '',
                                    services: '',
                                    agreementid: $find("<%= cboAgreements.ClientID %>").get_value(),
                                    allterritories: $('input[id$=chkAllTerritories]').is(':checked'),
                                    allservices: $('input[id$=chkAllCustomers]').is(':checked'),
                                    allcustomers: $('input[id$=chkAllServices]').is(':checked'),
                                    alname: $('input[id$=txtName]').val(),
                                    remdaysfrom: $('input[type=text][id$=txtNumericDaysFrom]').val(),
                                    remdaysto: $('input[type=text][id$=txtNumericDaysTo]').val(),
                                    contentid: $('input[type=text][id$=txtContentCP]').val()
                                }
                            }
                        },
                    });
             $("#grid").kendoGrid({
                    dataSource: sharedDS,
                    autoBind: false,
                     dataBound: function(e) {
                      //  alert('');
                     },
                    scrollable: false,
                    sortable: true,
                     pageable: {
                            refresh: true,
                            pageSizes: [10, 15, 20, 50]

                        },
                    columns: [
                            {
                                field: "ALId",
                                title: "ALId"
                            }
                        ]
                });
            }

$(document).ready(function () {
                BindGrid();
});

I call BindData() method each time when user prefers to search.
Gurudath
Top achievements
Rank 1
 asked on 24 Sep 2012
0 answers
139 views
Hi:

I have a Learning Management System that makes extensive use of Telerik Rad Ajax controls and in which I have invested a lot of time in developing the data component including the stored procedures.

I would like to be able to host and play lessons on mobile devices.  I've been looking at MVC and have managed to get myself quite confused.  It seems to me that if I make the transition to MVC - and then use the Kendo extensions on top of that, I loose much of my development in the data layer in my system.  However, I'm not sure that I understand MVC sufficiently to know if that's correct.

What do you suggest would be the most effective path for me to be able to concurrently deploy my LMS on both traditional Web and mobile devices - moving from a totally traditional .Net Web application.  What is the quickest way to make this transition?  What will be most cost-effective for long term support and maintenance of my system?

Any suggestions greatly appreciated.

Roger
Roger
Top achievements
Rank 2
Veteran
 asked on 24 Sep 2012
7 answers
311 views
I can't seem to work out how to populate the listview with jsonp data from PHP. I know there's a very good sample in the demos, but as I can't see the serverside, it's hard for me to know where it all goes wrong. 

If anyone could have a look at my source and give me some hints in the right direction I'd be forever grateful!

PHP: http://pastebin.com/h5e3eN3q
HTML/JS: http://pastebin.com/4rUeJwuh

Robin

Ali
Top achievements
Rank 1
 answered on 23 Sep 2012
0 answers
172 views

I have some problem with remote validation.

There is part of model

[DisplayName("For User ID")]
[Remote("CheckUserID", "User", ErrorMessage="Must be from list or Empty")]
public Nullable<System.Guid> ForUserID { get; set; }

View

@(Html.Kendo().ComboBoxFor(model => model.ForUserID)
            .HtmlAttributes(new { style = "width: 200px;" })
           //.Name("ForUserID")
           .Filter("contains")
           .Suggest(true)
           .Text("Select user")
           .Placeholder("Select name if necessary")
           .DataTextField("UserName")
           .DataValueField("UserId")
           .AutoBind(true)
           .DataSource(source =>
                           {
                               source.Read(read =>
                                               {
                                                   read.Action("GetUserWithId", "User"); //Set the Action and Controller name
                                               })
                                   .ServerFiltering(false); //If true the DataSource will not filter the data on the client.
                           })
             
           //.Events(e => { e.Select("userNameChange"); })
                   .Events(e => { e.Change("userNameChange"); })
          )

And action in Controller  UserController

[HttpGet]
public ActionResult CheckUserID(String userIdString)
{
    if (Request.IsAjaxRequest())
    {
           bool result = true; 
        JsonResult res = Json(result, JsonRequestBehavior.AllowGet);
        return res;
    }
    return RedirectToAction("Index", "AccountBoost");
}

All javaScripts for validation included into page, client validation works with Text Input that is also on this page. 

 I can get into action when typing in browser /User/CheckUserID .

But I never get into  CheckUserID action if I work with ComboBox.

Sergey
Top achievements
Rank 1
 asked on 22 Sep 2012
0 answers
119 views
Hello,

I have a grid using remote data vistualization connected to an OData datasource.  Everything is working correctly but if I add a filter, then call a datasource.read() and a grid.refresh(), the first records will be loaded but for some reason, the.count returned by the OData service seems to be ignored.

So if you have set the grid pageSize to 50, only the first 50 records will be requested to the server and then, no more call will be sent to the serveur (even if a count of 300 was returned by the jsonp response).

Can you confirm if this is a bug?

Best regards,

Simon
Simon
Top achievements
Rank 1
 asked on 21 Sep 2012
0 answers
123 views
Removed - wrong forum.
gm
Top achievements
Rank 1
 asked on 21 Sep 2012
0 answers
128 views
Hi,

I'm using Kendo Editor and I just noticed a strange behavior but only in Chrome.  It woks fine in IE and FF.

When I have the editor displayed on the page many buttons or links on the page just change their behavior to make the content scroll and also when I mouse over the button bar of the editor.

I found a work around by hovering the mouse over the text part of the editor from the side of the editor and then going up to hover over the button bar.

Does anybody knows of this and is there any way to circumvent?

Thanks
Stéphane Lagacé
Top achievements
Rank 1
 asked on 21 Sep 2012
0 answers
255 views
I am using comboboxes in a Kendo grid, and have not had any problem with the model binding working when the data is posted back to the server by the grid.  However, I just tried using a Kendo ComboBox in a traditional form that does a standard post (instead of an ajax post), and model binding does not work.  The reason is that the posted values don't match the MVC conventions for child properties.  

A quick example:

Let's say you have a combobox bound to an Employee property in your view model, and the Employee object has two child properties - EmployeeName and EmployeeId.

If you look at the ajax post of the data when this ComboBox is used in the grid it looks like this:

Employee.EmployeeId
Employee.EmpoyeeName

But when you put the the same ComboBox in a standard form, and post back to the server, the values are posted like this:

Employee
Employee_input 

This causes the form data not to be bound to the model accepted by the controller action method, since this naming standard does not follow the MVC binding conventions.  Why does this control behave differently in these two scenarios, and how can I make it start working in my forms?  Is there a Kendo model binder I need to register in my project?  This is a rather urgent issue, as we are getting ready to launch a Kendo Grid implementation, and this is breaking the existing forms now that they have been converted to use Kendo Comboboxes.  

I already created a support ticket for this, but thought I would try the forums as well, as I need to find a solution ASAP.

Thanks, DanO
Dan
Top achievements
Rank 1
 asked on 21 Sep 2012
0 answers
147 views
My applicartion has a ListView which has a detail view similar to "Sushi" app.
 
I need to add an array of images instead of singe image in my detail view which is implemented as template similar to sushi app again.

Can you provide me a pointer how this can be implemented,
Btw, I tried to find a span(place holder) and replace html using jquery, but it did not work.

Thanks


Jan
Top achievements
Rank 1
 asked on 21 Sep 2012
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
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
SegmentedControl
+? more
Top users last month
Boardy
Top achievements
Rank 2
Veteran
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
ivory
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ClausDC
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Boardy
Top achievements
Rank 2
Veteran
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
ivory
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ClausDC
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?