我有一个带有RibbonSpinEditItem的功能区,如果用户在那段时间闲置,则需要显示/设置用户自动注销前的分钟数。
目前配置如下:
themeGroup.Items.Add(MVCxRibbonItemType.SpinEditItem, i =>
{
var spin = (RibbonSpinEditItem) i;
spin.Text = "Log out after: ";
spin.Name = "TimeBeforeIdle";
spin.PropertiesSpinEdit.MaxValue = 60;
spin.PropertiesSpinEdit.MinValue = 5;
spin.Size = RibbonItemSize.Small;
spin.Value = ModelSessionHelper.TimeBeforeIdle;
spin.PropertiesSpinEdit.ClientSideEvents.ValueChanged = "function(s,e){ alert("+ spin.Value + "); }";
});
现在的问题是,当我更改项目的值时,它仍会警告第一个值。
示例:
原始时间:提醒20
+1:提醒20
+1:提醒20
更改为50:提醒20
我猜这是因为带有警报的函数是在我的控件创建时创建的,并使用控件当时的值。那么如何让警报使用当前值?
如果我必须使用我的javascript函数中的s参数,有人可以解释一下如何处理这个问题吗?因为如果我发出警报,我就会得到 Object [Object] 。而且我不知道如何从中获取控件的价值?
亲切的问候。
答案 0 :(得分:2)
您可以使用GetValue方法:
spin.PropertiesSpinEdit.ClientSideEvents.ValueChanged = "function(s,e) { alert(s.GetValue()); }";