我正在努力尝试在网格单元上显示一个Kendo工具提示,从ajax调用中获取内容.我的工具提示声明如下所示:
var grid = $("#myGrid").data("kendoGrid");
grid.table.kendoTooltip({
width: 300,
height: 200,
opacity: 0,
callout: true,
position: 'right',
animation:
{
close: {
effects: "fade:out"
},
open: {
effects: "fade:in",
duration: 1000
}
},
contentTemplateId: "tooltipTemplate",
filter: "td",
show: function (e) {
},
content: function (e) {
var target = e.target;
currentTarget = target;
var message = "Loading...";
if ($(currentTarget[0]).attr("name") !== undefined) {
//Do ajax call, show tool tip
}
else {
//CLOSE THE TOOTLIP
return false;
}
}
});
Run Code Online (Sandbox Code Playgroud)
在那个底部"else",我想关闭或隐藏工具提示,因为我没有属性"name",它被传递到我的ajax调用以显示内容.我已经尝试了以下所有方法:
$("#myGrid").data("kendoGrid").table.kendoTooltip.hide();
$("#myGrid").data("kendoTooltip").hide(); …Run Code Online (Sandbox Code Playgroud) 这与我最近提出的另一个问题有关.我正在尝试将用户角色信息绑定到网格,我正在为用户分配角色.每个用户可以在数据库中担任多个角色,这些角色应使用Kendo UI MultiSelect进行编辑.
当我选择所需的角色并回发给控制器时,"RoleBasicModel"对象数组包含所需数量的角色,但它们的所有属性都是空的.
模型定义为:
public class UserInfo
{
public string UserId { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string UserName { get; set; }
public string Roles { get; set; }
public IEnumerable<RoleBasicModel> RoleList { get; set; }
}
public class RoleBasicModel
{
public string Id { get; set; }
public string Text { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
网格设置为:
@(Html.Kendo().Grid<Models.UserInfo>()
.Name("userGrid")
.Columns(columns => …Run Code Online (Sandbox Code Playgroud) 我在各个项目中遇到过这个问题几次,我想知道是否有比我通常最终使用的解决方案更好的解决方案.
假设我们有一系列需要执行的方法,并且我们想知道其中一个方法中是否出现问题并优雅地突破(可能撤消任何先前的更改......),我通常会执行以下操作(伪C#,因为这是我最熟悉的):
private bool SomeMethod()
{
bool success = true;
string errorMessage = null;
success = TestPartA(ref errorMessage);
if (success)
{
success = TestPartB(ref errorMessage);
}
if (success)
{
success = TestPartC(ref errorMessage);
}
if (success)
{
success = TestPartD(ref errorMessage);
}
//... some further tests: display the error message somehow, then:
return success;
}
private bool TestPartA(ref string errorMessage)
{
// Do some testing...
if (somethingBadHappens)
{
errorMessage = "The error that happens";
return false;
}
return true;
} …Run Code Online (Sandbox Code Playgroud) c# asp.net error-handling design-patterns custom-error-handling
以前使用Kendo UI网格控件(版本2014.1.318)时,网格中任何行的高度都是固定的,椭圆用于显示单元格宽度之外的任何内容 - 看起来有点像下面的内容:

现在,自从我升级到最新版本的控件(2014.2.903)后,行的高度似乎会调整为适合内容:

该行的HTML现在包含下面的内嵌样式,而以前没有.
style="height: 45px;"
Run Code Online (Sandbox Code Playgroud)
我猜这是问题所在.我想知道是否有办法关闭此功能或在脚本中我可以删除它.我甚至无法找到发布历史中引入的内容!
编辑:我发现问题出在kendo.common.min.css文件中.如果我使用旧的,一切正常......只需要找到引起问题的新风格
kendo-grid ×3
c# ×2
kendo-ui ×2
asp.net ×1
asp.net-mvc ×1
javascript ×1
jquery ×1
razor ×1
telerik ×1