2009-10-14 75 views
1

我正在使用Telerik ASP.net控件套件(2008年第三季我相信,无法升级)。我在Radgrid控件中有一个radcombobox(在GridTemplateColumn的Edit模板中)。如果功能正常,但我已经在网格上的其他控件上进行了一些客户端验证(看起来没有错误)。出于某种原因客户端验证发生后,组合框停止运行。没有明显的js错误,事情就这样死了。Telerik RadComboBox RadGrid客户端验证

任何人看到这个,并已修复? Google让我失望了。

感谢您的帮助。

回答

1

好吧,我解决了它。非常庸俗的解决方法。

首先,我在multiviewpanel之外有一个面板,它包含另一个类似的Radcombobox,它也在验证时死掉了。我开始思考,如果我做了某种回帖,会不会因为某种原因解决问题?所以在我的网格中,我添加了一个自定义验证器,用于在我的网格中验证RadComboBox。它调用像这样一个javascript验证方法...

function valCOMBO(o, a) { 
     a.IsValid = true; 
     setTimeout(Res, 500); 
     } 
     function Res() { __doPostBack("<%=OPCOCombo.UniqueID %>");} 

注意,因为不需要此字段由用户填写,我总是返回有效是真的。这是准魔法发生的地方。我在javascript中的网格外部的顶部面板中的其他RadComboBox上发布了一篇文章。网格RadComboBox的顶部将其autopostback设置为true,如果您尝试此示例,则不知道这是否必要。

它工作。突然间,两个RadComboBoxes,一个在网格中,另一个在上面再次开始工作。但是我注意到这个值有时会在网格的RadComboBox中丢失,所以对于咯咯我在500毫秒的回发之前添加了轻微的停顿。那就是诀窍。它实际上只会停顿一小会儿,但我将它增加到了500毫秒,因为安全边缘的情况下,最终用户的连接速度很慢,这可能很重要。

Cluggy,cluggy,cluggy。我希望我可以刚刚使用jQuery,并使用这些frerik telerik radcomboboxes的替代品,但这是生活(我听说有限版本的jQuery被埋在Telerik中,将在后续版本中进行试验)。我敢打赌,Telerik的最新版本修复了这个问题(更好),所以当我们升级时,所有这些都会变得没有必要(当然,与我们构建的一些自定义控件继承关系有些冲突Telerik的。扬Q1 2009+破解这些控件:()

希望的,这可能帮助别人。

+0

这个'非常cludgy'的工作,只是节省了我的工作时间......感谢吨! – 2010-02-10 17:04:33

0

另一种选择。我遇到了这样一个场景,我不得不使用大量RadComboboxes如此而不是担心自己的验证内容,我只是添加了一个按钮旁边的每个按钮,用RadComboBox打开一个Radwindow,所以可以动态地选择值。在select javascript将选定的值传递回窗口开启器页面上的目标元素。很少有头痛,我不得不努力在调用每个键上的webservice之前,有一堆上下文参数设置(提示:用IE设置Radcombobox的高度至少对于2008 Telerik版本...如果你不这样做,你将开始冻结)。

再次,希望这个想法很有用。