Hello,
I try to get dataSource from my MVC project but got syntax error. Could someone tell me what's wrong? Thanks.
Action method on MyController:
public JsonResult Position_Read()
{
var entity = new PositionViewModel
{
POS_ID = "10000",
POS_TYPE="INTER",
CREATE_DT = DateTime.Now
};
return Json(entity);
}
JavaScript in View:
<script>
function GetServerSourceData() {
var ds = new kendo.data.DataSource({
type: "odata",
transport: {
read: "/MySite/MyController/Position_Read"
},
schema: {
model: {
fields: {
POS_ID: { type: "string" },
POS_TYPE: { type: "string" }
CREATE_DT: { type: "date" },
}
}
}
});
return ds;
}
</script>

I have added custom validation on the grid for multiple columns. It's working as expected. The only problem I am facing is that the tooltip position is not pointing to the current cell, it is pointing to different cells in the same row for all columns. How can I fix it?
columns.Bound(config => config.X).Title("X").HeaderHtmlAttributes(new { @class = "grid-headercustom" }).
ClientTemplate("#if(data.X == 1)" + "{#<span>Y</span>#}" + "else{#<span>N</span>#}#").
HtmlAttributes(new { @class = "grid-rowcustom" }).HtmlAttributes(new { style = "font-size:12px" }).Filterable(ftb => ftb.Enabled(false));$.extend(true, kendo.ui.validator, {
rules: {
RateV: function (input, params) {
if (input.is("[name='X']")) {
var grid = $("#grid-pricefeedconfiguration").data("kendoGrid");
var row = input.closest("tr");
var dataItem = grid.dataItem(row);
if (dataItem.X == true && dataItem.Y <= 0) {
input.attr("data-RateV-msg", "X must be greater than zero when the Y is ticked");
return false;
}
}
return true;
}
},
messages: {
RateV: function (input) {
// return the message text
return input.attr("data-val-X");
}
}
});
})(jQuery, kendo);I have a checkbox in a grid that I want to conditionally disable. What I have below technically hides the checkbox (haven't figured out how to conditionally 'disable') but you can still click in the box and the checkbox will appear even if it does not meet the condition:
@(Html.Kendo().Grid<SomeUI.Areas.UVL.Models.SomePOModel>
().Name("SomePOgrid")
.Columns(columns =>
{
columns.Bound(p => p.forceClose).Title("Force Close")
.ClientTemplate("#if(status == 'Pending'){# <input id='forceClose' value='#=forceClose#' class='k-checkbox' type='checkbox' checked='checked'/> #}#")
.Width(170).HtmlAttributes(new { style = "text-align:center;" });
})
Hello,
I am using Kendo for Asp.Net MVC. With an ImageBrowser on the Editor control, the name returned from the server (which is different from the file name uploaded) is respected, but for the FileBrowser, the returned name is ignored. How does on get this to work?
<PackageReferenceInclude="Telerik.UI.for.AspNet.Core"Version="2021.2.616"/>
I have aKendo Grid, I have added custom validation on multiple columns. It's working as expected for all the columns, though it's not working for the columns of the type checkbox. It shows the error message even if the checkbox is unchecked.
columns.Bound(config => config.X).Title("X").HeaderHtmlAttributes(new { @class = "grid-headercustom" }).
ClientTemplate("#if(data.X == 1)" + "{#<span>Y</span>#}" + "else{#<span>N</span>#}#").
HtmlAttributes(new { @class = "grid-rowcustom" }).HtmlAttributes(new { style = "font-size:12px" }).Filterable(ftb => ftb.Enabled(false));
$.extend(true, kendo.ui.validator, {
rules: {
RateV: function (input, params) {
if (input.is("[name='X']")) {
var grid = $("#grid-pricefeedconfiguration").data("kendoGrid");
var row = input.closest("tr");
var dataItem = grid.dataItem(row);
if (dataItem.X == true && dataItem.Y <= 0) {
input.attr("data-RateV-msg", "X must be greater than zero when the Y is ticked");
return false;
}
}
return true;
}
},
messages: {
RateV: function (input) {
// return the message text
return input.attr("data-val-X");
}
}
});
})(jQuery, kendo);
Hello everyone,
We have a Kendo Grid for user registration with an input field for first name, last name, etc.. We've encountered a problem with our users whose last name is "Null". When we attempt to add a new record to the grid, using a kendo popup editor, and enter null in the last name field it will automatically clear it. We are then able to retype it and the value will be retained in the input box while we continue editing. However, after the record is saved the kendo grid will once again clear the field.
Is there anyway we can work around this issue? Thanks for reading.
Good day guys,
I have a problem where i have grid with popup custom window editor. in the pop window I have a MultiColumnComboBox which i can use to update the field which is bound to the MultiColumnComboBox field in the popup window. now the problem comes when some of the fields return the ID and not the string text field which is very weird. have a look at the attached screenshots.
I have the multicomlumncombobox configures as below in the custom popup window
@(Html.Kendo().MultiColumnComboBox()
.Name("NameAbbreviation")
.DataTextField("NameAbbreviation")
.DataValueField("AccoutID")
.ValuePrimitive(true)
.AutoBind(false)
.Filter("contains")
.Placeholder("--Search/Select Mine---")
.FilterFields(new string[] { "AccountType", "Status", "NameAbbreviation", "Company", "Minerals" })
.Columns(columns =>
{
columns.Add().Field("AccountType").Title("AccountType").Width("130px");
columns.Add().Field("Status").Title("Type").Width("130px");
columns.Add().Field("NameAbbreviation").Title("Manufacturer").Width("350px");
columns.Add().Field("Company").Title("Company").Width("350px");
columns.Add().Field("Minerals").Title("Minerals").Width("130px");
})
.Events(e => e.Select("onParkarBayComboSelect"))
.HtmlAttributes(new { style = "width:100%" })
.Height(204)
.FooterTemplate("Total <strong>\\#: instance.dataSource.total() \\#</strong> items found")
.DataSource(source => {
source.Custom()
.ServerPaging(true)
.PageSize(80)
.Type("aspnetmvc-ajax") //Set this type if you want to use DataSourceRequest and ToDataSourceResult instances
.Transport(transport => transport
.Read(read =>
{
read.Action("ParkerBay_GetMineDetails_Read", "SiteCodes");
}))
.Schema(schema =>
{
schema.Data("Data") //define the [data](https://docs.telerik.com/kendo-ui/api/javascript/data/datasource#configuration-schema.data) option
.Total("Total"); //define the [total](https://docs.telerik.com/kendo-ui/api/javascript/data/datasource#configuration-schema.total) option
});
}).ToClientTemplate()
)Hi,
We have an issue with timing that we do not want to fix with a timeout. We are doing our best to get things fast, so a timeout is not a option. On the other hand we don't know how to fix it without a timeout.
We have 2 API calls. One to get the columns and one to get the grid. The columns are user defined and stored in a database.
Initial the standard header is loaded. Then the columns are hided by the hideColumn() method. Then the data is loaded.
We will then have the following issue:
We hope we can solve the issue with you.
Roel

I want to update a cell value (column Score) when the user selects another column value from the dropdownlist (column RatingLevel) in a grid. Column Score is not editable
@(Html.Kendo().Grid<NERDS.ViewModels.SPEEOYRatingEntryViewModel>()
.Name("grdRatingElementsList")
.Selectable(s => s.Mode(GridSelectionMode.Single))
.Columns(columns =>
{
columns.Bound(c => c.RatingElementName).Title("Element")
.HtmlAttributes(new { @Style = "font-weight: bold" });
columns.Bound(c => c.CriticalOrNonCritical).Title("Critical / Non-Critical").Width(90);
columns.Bound(c => c.Weightage).Title("Weightage (%)").Width(90);
//columns.Bound(c => c.R).Title("FY");
//columns.Bound(c => c.RatingLevelId).Title("Rating Level").ClientTemplate("#=RatingLevelId# #=RatingLevelName#");
columns.Bound(c => c.RatingLevel.RatingLevelName).EditorTemplateName("RatingLevelEditor").Title("Rating Level")
.HtmlAttributes(new { @Style = "color: indigo" })
.ClientTemplate("#=templateCell(data)#").Width(175);
//columns.Bound(c => c.RatingLevelId).Title("Rating Level").ClientTemplate("#=RatingLevelName#");
columns.Bound(c => c.Score).Title("Element Score").Width(90)
.HtmlAttributes(new { @Style = "font-weight: bold" });
})
//.AutoBind(true)
//.Resizable(resize => resize.Columns(true))
.Editable(editable => editable.Mode(GridEditMode.InCell))
.DataSource(dataSource => dataSource
.Ajax()
.Events(e => e.Change("onLevelChange"))
.Model(model =>
{
model.Id(f => f.RatingElementName);
model.Field(f => f.RatingElementName).Editable(false);
model.Field(f => f.CriticalOrNonCritical).Editable(false);
model.Field(f => f.Weightage).Editable(false);
//model.Field(f => f.RatingLevelId).DefaultValue();
model.Field(f => f.Score).Editable(false);
})
.Read(read => read.Action("GetRatingElements", "SPEEOYRatingEntry"))
)
)
Here is the function where I am trying to set...
function onLevelChange(e) {
gridObject = $("#grdRatingElementsList").data("kendoGrid");
var selectedItems = $.map(gridObject.select(), function (item) {
return $(item);
});
var dataItems = gridObject.dataItems();
selectedItems.forEach(function (selectedItem) {
dataItems[selectedItem.index()].Score = 50; This works if I make the column Score editable but that's not an option!
});
}
Please need help!
in Gantt-