Your search function inside the actual forum does not return any results.
See attached picture.
Hello,
I use the following approach to configure custom editing UI for the column: http://docs.telerik.com/kendo-ui/api/javascript/ui/grid#configuration-columns.editor
(see also Code below)
this works for textcolumns but there is a Problem with kendoNumericTextBox, kendoTimePicker and kendoDatePicker.
If I click into the column the corresponding editor displays but after editing the wrong value is given back to the text field - for me it looks like there is a formatting problem with the german language...
in this Video https://www.screencast.com/t/GkXn5uS7SH2 you can see what's going on:
How to set the Editors (kendoNumericTextBox, kendoTimePicker and kendoDatePicker) that they give the correct value back?
$(
function
() {
var
grid = $(
"#grdMitgliedprofile"
).data(
"kendoGrid"
);
grid.columns[1].editor =
function
(container, options) {
//-----------------------------------------
//Eintrag_INT
//-----------------------------------------
if
(options.model.Profilfeldtyp_ID == 1) {
$(
"<input name='"
+ options.field +
"' data-bind='value:"
+ options.field +
"'/>"
).appendTo(container).kendoNumericTextBox({
format:
"n"
,
decimals: 0
});
}
//-----------------------------------------
//Eintrag_FLOAT
//-----------------------------------------
else
if
(options.model.Profilfeldtyp_ID == 2) {
$(
"<input data-bind='value:"
+ options.field +
"'/>"
).appendTo(container).kendoNumericTextBox({
format:
"n"
,
decimals: 2,
culture:
"de-DE"
});
}
//-----------------------------------------
//Eintrag_BIT
//-----------------------------------------
else
if
(options.model.Profilfeldtyp_ID == 3) {
//$("<input type='checkbox' data-bind='value:" + options.field + "' class='k-checkbox'/>").appendTo(container);
$(
"<input data-bind='value:"
+ options.field +
"'/>"
).appendTo(container).kendoDropDownList({
dataTextField:
"text"
,
dataValueField:
"value"
,
dataSource: [
{ text:
"JA"
, value:
"JA"
},
{ text:
"NEIN"
, value:
"NEIN"
},
],
});
}
//-----------------------------------------
//Eintrag_VARCHAR
//-----------------------------------------
else
if
(options.model.Profilfeldtyp_ID == 4) {
$(
"<textarea data-bind='value:"
+ options.field +
"' class='k-textbox'/>"
).appendTo(container);
}
//-----------------------------------------
//Eintrag_MONEY
//-----------------------------------------
else
if
(options.model.Profilfeldtyp_ID == 5) {
$(
"<input data-bind='value:"
+ options.field +
"'/>"
).appendTo(container).kendoNumericTextBox({
format:
"c"
,
decimals: 2,
culture:
"de-DE"
});
}
//-----------------------------------------
//Eintrag_TIME
//-----------------------------------------
else
if
(options.model.Profilfeldtyp_ID == 6) {
$(
"<input data-bind='value:"
+ options.field +
"'/>"
).appendTo(container).kendoTimePicker({
dateInput:
true
,
format:
"HH:mm:ss"
,
parseFormats: [
"HH:mm:ss"
],
culture:
"de-DE"
});
}
//-----------------------------------------
//Eintrag_DATETIME
//-----------------------------------------
else
if
(options.model.Profilfeldtyp_ID == 7) {
$(
"<input data-bind='value:"
+ options.field +
"'/>"
).appendTo(container).kendoDatePicker({
dateInput:
true
,
format:
"dd.MM.yyyy"
,
culture:
"de-DE"
});
}
//-----------------------------------------
//Eintrag_IMAGE
//-----------------------------------------
else
if
(options.model.Profilfeldtyp_ID == 8) {
$(
"<input name='files' id='files' type='file'/>"
).appendTo(container).kendoUpload({
async: {
saveUrl:
"save"
,
removeUrl:
"remove"
,
autoUpload:
true
}
});
}
else
{
$(
"<textarea data-bind='value:"
+ options.field +
"' class='k-textbox'/>"
).appendTo(container);
}
}
})
Hello,
If I reload the tabstrip Content of the second tab with JavaScript with tabStrip.reload(item) in a partialview the Content is not replaced but
always appended...
@(Html.Kendo().TabStrip().Name(
"tabMitglieddokumenteEdit"
)
.Animation(
false
).Items(tab =>
{
tab.Add().Text(
"Ansicht"
).Selected(
true
).Content(@<text><iframe style=
"position: absolute; height: calc(100% - 70px); width:100%; border: none"
frameborder=
"0"
src=
"@ViewBag.BCPHostUrl/DocumentViewer?source=Mitglieddokumente&id=@Model.Mitglied_ID&docid=@Model.Dokument_ID&w=100&h=100&sidepane=true&toolbar=true"
></iframe></text>);
tab.Add().Text(
"Dokumentdaten"
).LoadContentFrom(
"DokumentEdit_Read"
,
"Mitglieddokumente"
,
new
{ mitgliedid = @Model.Mitglied_ID, dokumentid = @Model.Dokument_ID });
}))
maybe the reason is that the tabstrip is in a partial view but how to avoid that?
robert
In order to use Boostrap tooltips, I have the following on my page.
$(document).ready(function() {
$('[data-toggle="tooltip"]').tooltip();
});
However, when using a grid with hierarchy, the tooltips of the details grids are not rendered yet so the above method cannot work for them.
Are there some events that I can hook to when the details grids appear?
In my ASP.NET Core application I use a Razor template to create a Kendo grid based on one of my ViewModels. The grid itself is set to use InCell editing and one of the columns generated corresponds to a string variable in the ViewModel. When I clear the string cell in the grid and trigger an update to the grid's datasource I would expect the value of the string variable in the model of the datasource request to be an empty string. However, when I stop at a break point in the controller and look at the properties of the model the string value has a value of null.
What would I need to do to pass along an empty string in the model to the controller action?
I have a custom Edit button on Grid.
Upon clicking Edit, I get the selected grid data row:
function onUserOrgEdit(e) {
...
var data = this.dataItem($(e.currentTarget).closest("tr"));
...
}
Next, I need to refresh my window:
var win = $("#createUserWindow").data("kendoWindow")
win.refresh({
url: "/Admin/EditOrgRole",
data: data
});
I cannot JSON.stringify because wrong content-type is sent to controller action and asp.net core mvc not able to bind JSON correctly. I get null values in controller action.
What is the correct way to do this?
Thanks.
I set MinLength on Autocomplete.
However when I click on the "clear" icon of the autocmplete box there are a few unexpected behaviors
- there is a call to the controller with empty text
- the dropdown remains open saying "no data found"
I have an editable grid with custom EditorTemplate, the grid has "InLine" edit mode.
I would like to send a property to this EditorTemplate by using EditorViewData. This property is assigned to the selected row.
@(Html.Kendo().Grid<VehicleWithTrackerDTO>()
.Name(
"VehiclesGrid"
)
.Events(e => e
.ExcelExport(
"excelExport"
)
.BeforeEdit(
"getColor"
))
.Columns(columns =>
{
// LOOK AT THE FIRST LINE BELOW:
columns.Bound(d => d.ImageId).Title(
"Image"
).ClientTemplate(
"<img src='"
+ Url.Content(
"~/imgs/"
) +
"#:Image#'/>"
).Width(120).Sortable(
false
).Filterable(
false
).EditorViewData(
new
{ colorId = 1 });
// colorId = 1 should be replaced with something like #:ColorId#
columns.Bound(d => d.Brand).Width(200).Filterable(fb => fb.Multi(
true
).Search(
true
));
columns.Command(command => { command.Edit(); }).Width(100);
})
.Editable(editable => editable.Mode(GridEditMode.InLine))
.DataSource(source => source
.Ajax()
.Events(events => events.Error(
"errorHandler"
))
.Model(model => model.Id(p => p.DeviceId))
.Read(read =>
{
read.Action(
"GetVehicles"
,
"Vehicles"
).Data(
"searchQuery"
);
})
.Update(update => update.Action(
"Update"
,
"Vehicles"
))
)
)
My question is how can I send an item with "" property?
My first idea was to create a javascript function, which will return data like this:
function
getColor(e) {
return
{
colorId: e.model[
"ColorId"
]
};
}
But I can't see the solution to pass this data into EditorViewData method.
Thanks,
Mateusz
I have a data on a server with the CalbelCase formatting for properties. How bind column to model via lambda expression?
This example demonstrates this:
@(Html.Kendo().Grid<WebApplication66.Models.Contact>()
.Name("Grid")
.Columns(columns => {
columns.Bound(m => m.Name);
columns.Bound(m => m.Price);
})
.DataSource(d => d
.WebApi()
.Model(model => {
model.Id(m => m.Key);
model.Field(m => m.Name);
})
.Read(read => read.Action("Get", "Contacts"))
)
)
My JSON form WebApi controller:
{"data":[{"name":"Test Name","price":100,"key":0},{"name":"Test Name 2","price":1,"key":1}],"total":2,"aggregateResults":null,"errors":null}