Telerik Forums
Kendo UI for jQuery Forum
1 answer
392 views
Drag from listview and drop in  Circular target area (maybe using SVG etc it can be achieved)
I tried using CSS circle border-radius:50% but it just shows circle div , but actually its a rectangular div.

I am searching the solution from several days in your forum and other stackoverflow forums, but couldn't find solution for complete circular div area for drop (Using Drag and Drop)

Please let me know whether it is possible or not ?
If you want more detail of my question then I can create a jsfiddle for it.
Dimo
Telerik team
 answered on 13 Nov 2013
1 answer
216 views
So I'm using dataTables since I really like the functionaloty, but I'm having problems pulling the data.. only kendoUI can pull the data from a Yii url structure for instance this one url:"<?php echo Yii::app()->createUrl('gridData/dataContactLog?customer_id='.$model->id); ?>",  so I just want to get data from kendoUI and put it in dataTables plugin thhanks!
Alexander Valchev
Telerik team
 answered on 13 Nov 2013
1 answer
138 views
I am following this demo:
http://demos.kendoui.com/mobile/scrollview/custom-template.html#/

What I am not able to figure out is how to bind a Tap event either after the new pages are rendered.

$('.
batch-page .gallery-page .tile').kendoTouch({tap: function (e) {
   alert('Hello")
}});

Normally I would just jquery's live on method, but I need the kendo tap binding.
Alexander Valchev
Telerik team
 answered on 13 Nov 2013
4 answers
308 views
Hi there.

I have several dropdownlist boxes, and each box is populated serverside
<BR><div style="position:absolute; @(item.GetDataSizePos(true));
margin-top:0px;"><BR>
@Html.Kendo().DropDownList().Name(item.le.FieldId).BindTo(CaretakerPortal.App_Start.CaretakerHelpers.CreateSelectList(item.le.DropDownItems,
item.datavalue.IntValue.ToString())).Enable(true).OptionLabel("Vælg fra
listen").HtmlAttributes(new { @style = "width: 100%; height: 100%;" })<BR>
</div>
The CreateSelectList function returns a List<SelectListItem>
When the returned List<SelectListItem> got a default value (Selected=true), the dropdownlist is not visible, if there is not selected value, then the dropdownlist is visible.
In firebird developer screen, i can see it sets visibility: hidden when i got a value, and its not there when i dont have a value.
When i have a value for a dropdownlist - html code:

<span class="k-widget k-dropdown k-header" style="width: 100%;
height:
100%;" unselectable="on" role="listbox" aria-haspopup="true" aria-expanded="false" tabindex="0" aria-owns="aktivitet_aprioritet_listbox" aria-disabled="false" aria-readonly="false" aria-busy="false" aria-activedescendant="aktivitet_aprioritet_option_selected"><BR><span class="k-dropdown-wrap
k-state-default" unselectable="on" style="visibility: hidden; color:
rgb(153, 153,
153);"><input id="aktivitet_aprioritet" class="valid" type="text" value="A" style="width:
100%; height: 100%; display:
none;" name="aktivitet.aprioritet" data-role="dropdownlist"><BR></span>
Note the second <span>
And here is the html code when i dont have a value:
<span class="k-widget k-dropdown k-header" style="width: 100%;
height:
100%;" unselectable="on" role="listbox" aria-haspopup="true" aria-expanded="false" tabindex="0" aria-owns="aktivitet_ansvarlig_listbox" aria-disabled="false" aria-readonly="false" aria-busy="false" aria-activedescendant="aktivitet_ansvarlig_option_selected"><BR><span class="k-dropdown-wrap
k-state-default" unselectable="on" style="color: rgb(153, 153,
153);"><input id="aktivitet_ansvarlig" class="valid" type="text" style="width:
100%; height: 100%; display:
none;" name="aktivitet.ansvarlig" data-role="dropdownlist"><BR></span>
Im a missing something obvious?
Right now i will just create a standard combobox in html to get along, but would prefer to use kendo objects.
Thanks in advance
 - René





Rene
Top achievements
Rank 1
 answered on 13 Nov 2013
8 answers
134 views
Hi,

I was surprised to see there is no possibility to have a scrollable menu when the rendered content is bigger than the screen.

Here is an example (the list starts at the letter B, but only items from P are displayed).  Is there any way to access the hidden items?

Dimo
Telerik team
 answered on 13 Nov 2013
1 answer
175 views
I'm using kendoui Scheduler with a customized appointment editor (with MVC4 Razor).
All fields in the scheduler and in the editor window are in the correct language, except in the reccurrence editor - here all texts are still in default langauge english - alls fields part of "reoccurenceContainer" ?!

<div id="schedulerEventEditor">
    <fieldset>
        <div class="editor-label">
            @Html.LabelFor(model => model.Title)
        </div>
        <div class="editor-field">
            @Html.TextBoxFor(model =>model.Title, new {data_bind ="value: title"})
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.Description)
        </div>
        <div class="editor-field">
            @Html.TextAreaFor(model => model.Description, new {rows = 5, cols=24, data_bind ="value: description"})
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.Start)
        </div>
        <div class="editor-field">
            <input name="start" type="text" required data-type="date" data-role="datetimepicker" data-bind="value: start,invisible: isAllDay" />
            <input name="start" type="text" required data-type="date" data-role="datepicker" data-bind="value: start,visible: isAllDay" />
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.End)
        </div>
        <div class="editor-field">
            <input name="end" type="text" required data-type="date" data-role="datetimepicker" data-bind="value: end ,invisible:isAllDay" />
            <input name="end" type="text" required data-type="date" data-role="datepicker" data-bind="value: end ,visible:isAllDay" />
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.IsAllDay)
        </div>
        <div class="editor-field">
            <input type="checkbox" name="isAllDay" data-type="boolean" data-bind="checked:isAllDay" />
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.RecurrenceRule)
        </div>
        <div class="reoccurenceContainer">
            <div class="editor-field">
                <div data-bind="value: recurrenceRule" id="recurrenceEditor"></div>
            </div>
        </div>
    </fieldset>
 
<script>
    jQuery(function () {       
        $("\#recurrenceEditor").kendoRecurrenceEditor();
    });
 
</script>
Vladimir Iliev
Telerik team
 answered on 13 Nov 2013
4 answers
99 views
Hi everyone,

    I have created an event editor template and I have added a resource dropdownlist as in this thread.

    http://www.kendoui.com/forums/kendo-ui-web/scheduler/how-to-create-editable-template-with-the-resource-.aspx

    But I think that occurs a bug when you open the event a second time and you close it with cancel button.

    For example:
    1) You open the event window and you change the resourse. If you click Save button all is OK, the event move to selected resource.
    2) You open the same event. In resource dropdownlist the selected option is the updated resource.
    3) But if you click  Cancel button then the event is moved to old resource in all views (day, week, month and agenda). The strangest thing is that in database doesn't occurs any update, it is the new value but in scheduler it is showed the old value.

    If you open another event all work correctly, the problem is only when you open a second time the same event and you click cancel.

Thank you
Regards
salvador
Top achievements
Rank 1
 answered on 13 Nov 2013
1 answer
136 views
Hi...

     Iam currently working on Kendo UI MVC Grid and have a couple of requirements mentioned below:

     1) Kendo grid with a dropdown column in the view mode, i mean its not like the dropdown we see in the edit mode.
     2) Dropdown in the grid should be filtered and loaded based on a row primary key data, it should make an ajax call to controller and populate the drop down after data filter.

I tried using the client template and foreign key columns, both the features only give dropdown in the edit mode and the data in the dropdown is loaded on Grid initialization and stored in view data, so no more hits to server after that. I couldn't find any sources for these couple of requirements i have.
It would be great if i can get some code snippets.
Thanks in advance...
-Naren
Petur Subev
Telerik team
 answered on 13 Nov 2013
5 answers
1.0K+ views
Hi,

I am trying to validate textboxes inside a grid column. This column is having different html controls depending on source data.
For example it can have textbox in one row and dropdown in next. I am able to achieve this using client template.
I want to validate inputs in textboxes. Validation can be different for each text box. It can be for number, max length and/or custom.
I am passing list of validation attributes in source data.

This is working good unless I click on any other grid cell having client template. As soon as I click such cell the validation message is disappering.

Any help on this is greatly appricated!

Thanks

Client template code -

01.sourceData 
02.function CustomControlEditor(sourceData, defaultValue, templateType, controlType)
03.    {
04.         
05.        if (sourceData != null && sourceData != '' )
06.        {
07.            var dd;
08.            if (controlType == "Multiselect")
09.            {
10.                dd = "<select id= 'dd' multiple='multiple'  onchange='SensorDropDownChanged(this,\"" + templateType + "\");'>";
11.  
12.                //get source data
13.  
14.        //get default values
15.  
16.        //populate list  
17.                
18.                return dd;
19.            }
20.            else if (controlType == "Dropdownlist")
21.            {
22.                dd = "<select id= 'dd' onchange='SensorDropDownChanged(this,\"" + templateType + "\");'>";
23.  
24.                 //get source data
25.  
26.        //get default values
27.  
28.        //populate list  
29.                
30.                return dd;
31.            }
32.          
33.        //textbox sourceData is list of validation attributes
34.           else {
35.  
36.            var tb;
37.  
38.            if (defaultValue != null)
39.        {
40.                 
41.                    tb = "<input id= 'tbText' type='text' value='" + defaultValue + "' onblur='SensorTextBoxChanged(this,\"" + templateType + "\");' " + sourceData + "/>";
42.                }
43.            else
44.        {
45.                    tb = "<input id='tbText' 'tb' type='text' 'onblur='SensorTextBoxChanged(this,\"" + templateType + "\");' " + sourceData + "/>";
46.                }
47.            return tb;
48.        }
49.        }
50.          
51.              
52.    }

Archana
Top achievements
Rank 1
 answered on 12 Nov 2013
1 answer
121 views
One thing I have missed a lot with Kendo, that I was accustomed to with KnockoutJS was the KnockoutJS Mapping Plugin. This was an extremely useful feature to me. I have very much wanted its functionality in kendo, so I took some time and just wrote a small few lines of code to do some of what I used to with knockout.

I don't know if this will ever see the light of day, but I would love to see this kind of thing in the future of kendo.

First, you just declare a mapping. To make this easier, I simply added it to the declaration of a model in kendo.data.Model.define. This particular mapping simply uses a function to merge all children under an array called Tags when it is created, so that they each have a function.

var Model = kendo.data.Model.define({
    id: "Id",
    fields: {
        Id: {
            type: "string",
        },
        Name: {
            type: "string",
        },
        Tags: []
    },
    mapping: {
        Tags: {
            children: function (data) {
                return $.extend(data, {
                    onRemove: function (e) {
                        console.log(e);
                    }
                });
            }
        }
    }
});
Next, you need an actual function to perform the mapping. I did this with this code.
kendo.mapping = function (source, mapping) {
    var name,
        value;
 
    // if the user provides us a mapping, we can use that to help
    // build the objects appropriately
    for (name in source) {
        if (source.hasOwnProperty(name)) {
            // get the value for this property or item
            value = source[name];
 
            // try to determine if this is an array, or just a
            // normal object. That will greatly dictate our choice of behavior
            if (value instanceof Array) {
 
                // if this is an array, then we will try to check for a
                // key in the mapping schema
                if (mapping[name].children) {
 
                    // if we discover a mapping key for this array, we
                    // will use it to reconstruct the array data
                    for (var i = 0; i < value.length; i++) {
                        source[name][i] = mapping[name].children(value[i]);
                    }
                }
            } else {
                // attempt to match any non array type keys
                if (mapping[name]) {
                    source[name] = mapping[name](value);
                }
            }
        }
    }
 
    return source;
}
This will go through the mapping data given, and some JSON data given, and do the appropriate work to call upon the mapping keys and
children functions.

Now, I have a function for merging raw JSON data with a kendo view model.
kendo.data.ObservableObject.prototype.fromJSON = function (source, mapping) {
    var name,
        value,
        observable = this;
 
    // if there is mapping given, then pass it through that first
    if (mapping) {
        source = kendo.mapping(source, mapping);
    }
 
    for (name in source) {
        if (observable.hasOwnProperty(name)) {
            observable.set(name, source[name]);
        }
    }
}
So then, I can just call this in my view model and javascript like this.
var viewModel = new Model({
    Id: null,
    Name: null,
    Tags: []
});
 
var dataSource = new kendo.data.dataSource({
    transport: {
        read: {
            url: '/data/items/',
            dataType: "json",
            type: 'GET'
        }
    },
    schema: {
        total: "total",
        data: "data"
    }
});
So then, the controller returns data that looks like this.
Id: "items/1",
Name: "Some Game Item",
Tags: [
    {
        Id: "tags/1",
        Name: "Sword"
    },
    {
        Id: "tags/2",
        Name: "Weapon"
    }
]
And the mapping just needs one call, to merge it with the view model, and to map the function onto the tags array. Where data is the data returned from the dataSource.
viewModel.fromJSON(data.toJSON(), viewModel.mapping);
I think you will find this is extremely useful for building complex models that meet more realistic business needs.

Stacey
Top achievements
Rank 1
 answered on 12 Nov 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
MultiColumnComboBox
Chat
DateRangePicker
Dialog
Checkbox
Timeline
Drawer
DateInput
ProgressBar
MediaPlayer
ImageEditor
TextBox
OrgChart
Effects
Accessibility
PivotGridV2
ScrollView
BulletChart
Licensing
QRCode
ResponsivePanel
Switch
Wizard
CheckBoxGroup
TextArea
Barcode
Breadcrumb
Collapsible
Localization
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
Rob
Top achievements
Rank 3
Bronze
Iron
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Bronze
Iron
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?