2011-06-15 140 views
1

页上写我Telerik的窗口:Telerik的窗口不显示

<telerik:RadWindow ID="DictionaryWindow" runat="server"></telerik:RadWindow> 

这个网页上我运行JavaScript时按钮用户点击:

<script type="text/javascript"> 
function getWindow() { return document.getElementById("<%= DictionaryWindow.ClientID %>"); } 

var oWin = getWindow(); 
    if (oWin != null) {    
     oWin.setUrl("WebForm1.aspx"); 
     oWin.set_width(800); 
     oWin.set_height(800); 
     oWin.Show(); 
     oWin.Center(); 

    } 
</script> 

错误apears:对象不支持这个属性或方法。 我在网上找到这个javascript像例子。 这是获得telerik窗口显示的正确方法吗?我可以让窗户以另一种方式出现吗?

+2

请接受一些你以前的问题的答案第一。 – Kon 2011-06-15 13:24:56

+0

在哪一行中得到这个错误? – JAiro 2011-06-15 13:26:10

+0

on line:oWin.setUrl(“WebForm1.aspx”);我观察运行时间的工作,并且它表明那些没有方法setUrl()和其他方法的对象。 – 2011-06-15 13:27:59

回答

-2

JavaScript是一种区分大小写的语言。 telerik控件为他们的javascript方法使用(大部分)camel-casing。根据该文件,你可能想:

oWin.show();

oWin.center();

+0

这是不正确的。看看他们的API文档:http://www.telerik.com/help/aspnet/window/radwindowobjectclientside.html – 2011-06-17 11:46:06

-1

的getElementById将返回元素,而为了获得访问控制的客户端API,你需要去的对象的引用 - 这就是为什么你需要使用$ find()方法。

0

我会用RadWindowManager来访问你的窗户:

function UseRadWindow() 
{ 
    var oManager = GetRadWindowManager(); 
    var oWnd = oManager.GetWindowByName("DictionaryWindow"); 
    oWnd.setUrl("WebForm1.aspx");   
    oWnd.SetWidth(800); 
    oWnd.SetHeight(800); 
    oWnd.Show(); 
    oWnd.Center(); 
} 

你也可以做到这一点通过直接访问窗口:

function UseRadWindow() 
{ 
    var oWnd = $find("<%= DictionaryWindow.ClientID %>"); 
    oWnd.setUrl("WebForm1.aspx");   
    oWnd.SetWidth(800); 
    oWnd.SetHeight(800); 
    oWnd.Show(); 
    oWnd.Center(); 
} 

看看他们的客户端API文档:

Telerik RadWindowManager Client-Side API