Hello,
My grid has a column called "vessel_idx" that shows all the IDs relating to each vessel(obviously), each row also has a button that calls my own Javascript function. I need to pass the value of the vessel_idx into this function, does anyone know how I can accomplish this?
Here is my grid with the required column and button as described above.
@(Html.Kendo().Grid<
MyProject.ViewModels.SpotGridViewModel
>()
.Name("Grid")
.Deferred()
.Columns(columns =>
{
columns.Bound(c => c.vessel_idx);
columns.Template(@<
text
></
text
>)
.ClientTemplate("<
ul
class
=
'grid-options'
>" +
"<
input
type
=
'button'
id
=
'mybtn'
value
=
'Prompt'
/>"+
"</
ul
>").Width(200);
})
)
Here is my javascript code that I need to pass the vessel_idx into
$("#Grid").on("click", "#mybtn", function (e) {
var id = vessel_idx;
$.ajax({
url: "@Url.Action("buttonPrompt", "Home")",
type: "GET",
data: { id: id },
dataType: 'json',
cache: false,
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("Error" + errorThrown);
console.log(errorThrown);
},
success: function (data) {
console.log("yay");
}
});
});
Many thanks
I have two TreeViews which have drag and drop enabled. I am trying to limit the depth when someone tries to drag a branch to the other tree.
Example:
TreeA (root)
TreeA.1.0 (child; level 1)
TreeA.1.1 (child; level 2)
TreeB (root)
TreeB.1.0 (child; level 1)
TreeB.1.1 (child; level 2)
Given the above two trees and I desire to only have nodes up to 3 levels deep (ie. no deeper than child level 2) If a user drags "TreeB.1.0" under "TreeA.1.1" then TreeA will have children 4 levels deep.
I see events Drag and Drop which allow me to validate the destination tree to prevent this. I tried to implement custom data elements as HtmlAttributes in my OnDemand TreeViewItemModel DataSource in server-side code:
TreeViewItemModel node = new TreeViewItemModel();
...
node.HtmlAttributes.Add(new KeyValuePair<string, string>("data_level", level.ToString()));
This
I'm looking to get the MultiSelect list to display something like "1 out of 15" But when using the "maxTotal" found here tagTemplate, I get "maxTotal is not defined"
1.
<script type=
"text/x-kendo-template"
id=
"selectedRoleTemplate"
>
2.
#:data.length# out of #:maxTotal#
3.
</script>
4.
<script type=
"text/javascript"
>
5.
var
selectedRoleTemplate = kendo.template($(
"#selectedRoleTemplate"
).html(), { useWithBlock:
false
});
6.
</script>
01.
@(Html.Kendo().MultiSelectFor(m => m)
02.
.AutoBind(
true
)
03.
.AutoClose(
false
)
04.
.DataValueField(
"RoleId"
)
05.
.DataTextField(
"RoleName"
)
06.
.TagMode(TagMode.Single)
07.
.TagTemplate(
"#=selectedRoleTemplate()#"
)
08.
.DataSource(dataSource =>
09.
{
10.
dataSource.Read(read => read.Action(
"UserRoleList"
,
"Lov"
,
new
{ userId = -9, isActiveOnly =
false
}))
11.
.ServerFiltering(
false
);
12.
}))
Hi,
Is there a way to access scheduler resources inside the Event Template?
For instance:
Course Resource - List of courses with CourseID and CourseTitle.
Event Template -
.EventTemplate(
"<div style=color:#:setTextColor(data)#>" +
"<h4>Course: #= CourseTitle # </h4>" +
"<h5>Class: #= title # </h5>" +
"</div>"
)
"<h4>Course: #= CourseTitle # </h4>" would be returned by the foreign key ID from the viewModel record to the Course Resource primary key.
I'm currently working on a .NET MVC app with one area, Inside, and then a single controller on the root area, Home. What I'm noticing is something somewhat similar to what is discussed in this post; I have a Home controller in both my root and Inside areas, and when the menu attempts to render the links to the root actions while at an Inside url, such as /Inside/Account/Login, the links to any Home actions which are present in both the Inside and root areas are not rendered. I noticed that if I take away the [Authorize] attribute on my Inside Home controller, the actions do render properly i.e. /Home/Index is rendered. However, I want to make sure that my inside controllers are decorated with the Authorize attribute.
For example, with the following code snippet
// Root Home Controller
public class HomeController : Controller {
// Doesn't render
public ActionResult Index() { return View(); }
// Doesn't render
public ActionResult Contact() { return View(); }
// Renders
public ActionResult About() { return View(); }
}
// Inside Home controller
[Authorize]
public class Home : Controller {
public ActionResult Index() { return View(); }
public ActionResult About() { return View(); }
}
// /Inside/Account/Login View snippet
@(Html.Kendo().Menu().Name("MainMenu").Items(children =>
{
items.Add().Text("Root Home").Action("Index", "Home", new { area = "" });
items.Add().Text("Root Contact").Action("Contact", "Home", new { area = "" });
items.Add().Text("Root About").Action("About", "Home", new { area = "" });
items.Add().Text("Login").Action("Account", "Login", new { area = "Inside" });
}))
if I go to /Home/Index or /Home/Contact I get a menu the menu you would expect (as seen in Correct.png), whereas if I go to /Inside/Account/Login, I get a menu with only the About and Login buttons (as seen in Incorrect.png). My guess is that the Telerik Menu rendering function is attempting to security trim [Authorize] decorated action links with identical names disregarding the area in which the action was specified.
I'm wondering if there is a better way around this bug than to decorate my Inside.Home.Index/Contact actions with [AllowAnonymous] and using a redirect to the root area if a user is not authenticated.
Hi,
I am using MVC data annotation in the class (sample below) everything works ok but I am facing two issues
1. The class doesn't turn to "k-invalid" after submit click for the kendo comboboxm, therefore, I cannot set the css as red
2. The conbobox tooltip is behind another control, tooltip doesn't expand it like textbox
[Required(ErrorMessage = "Car Owner is required.")]
[Range(1, int.MaxValue, ErrorMessage = "This is invalid.")]
public int? CarOwnerId { get; set; }
Thank you!
I have created an MVC ASP.NET 5 Web API project which uses DNX 4.5.1
I am trying to create a gantt chart in my .cshtml view file via the following code:
<div id="gantt">
@(Html.Kendo().Gantt<GanttData, DependencyViewModel>()
.Name("Gantt")
.DataSource(ds => ds
.Read(read => read
.Action("Tasks", "Home")
)
.Model(m =>
{
m.Id(f => f.TaskID);
m.ParentId(f => f.ParentID);
m.OrderId(f => f.OrderId);
m.Field(f => f.Expanded).DefaultValue(true);
})
)
.DependenciesDataSource(ds => ds
.Read(read => read
.Action("Dependencies", "Home")
)
.Model(m =>
{
m.Id(f => f.DependencyID);
m.PredecessorId(f => f.PredecessorID);
m.SuccessorId(f => f.SuccessorID);
m.Type(f => f.Type);
})
).Resizable(true)
)
</div>
The error comes from IHtmlHelper "not containing a definition" for Kendo even though Kendo.Mvc is in my project's references.
This identical code successfully generates a gantt chart in a ASP.NET 4.5.1 MVC 4 project, however.
Is there a way to create a Gantt chart in an ASP.NET 5 MVC application?
Thanks
Am I missing something? I cannot get this control to work at all. I first tried making a simple switch:
@Html.Kendo().MobileSwitch().Name("​MySwitch").Checked(true).OnLabel("Label On").OffLabel("Lable Off")
All I get is a check box. So then I tried the sample on the demo site, and that also did not work.
I am using MVC4 on VS 2015 and I used the "Configure Project" wizard to add "Asp.Net MVC" to the project.
Hello,
I need collapse the rest of de expanded rows when the user expand a new row and scroll this row to the top position of the grid. I have tried with the next code unsuccessfully.
Html.Kendo().Grid<ProductorViewModel>().Name("productors")
......
.Events(e => e
.DataBound("onDataBound")
.DetailInit("onDetailInit")
.DetailExpand("onExpand")
)
.....
<script type="text/javascript">
function onExpand(e) {
var grid = $("#productors").data("kendoGrid");
var dataView = this.dataSource.view();
var model = e.data;
for (var i = 0; i < dataView.length; i++) {
var uid = dataView[i].uid;
if (uid != model.uid) {
var tr = $("tr[data-uid=" + uid + "]");
grid.collapseRow(tr);
}
}
}
</script>
Can you help me with some example?
Thanks!