通过javascript处理Infragistics WebDialogWindow窗口状态

通过javascript处理Infragistics WebDialogWindow窗口状态,javascript,asp.net,infragistics,windowstate,Javascript,Asp.net,Infragistics,Windowstate,通过使用上述代码,它可以将web对话框窗口的窗口状态更改为可见。现在的问题是它正在刷新页面。似乎使用onClientClick方法并调用javascript函数可以避免页面刷新。但是,我不知道如何通过Javascript更新Infragistics DialogWindowsState的窗口状态。请帮忙 当然,它会刷新页面。服务器端句柄需要它来在远程客户端上产生任何更改。但是,不要忘记ASP.NET控件在JavaScript中也有一个插件(您可以使用它来处理事件和操纵控件)。我认为您需要的是这个

通过使用上述代码,它可以将web对话框窗口的窗口状态更改为可见。现在的问题是它正在刷新页面。似乎使用
onClientClick
方法并调用javascript函数可以避免页面刷新。但是,我不知道如何通过Javascript更新Infragistics DialogWindowsState的窗口状态。请帮忙

当然,它会刷新页面。服务器端句柄需要它来在远程客户端上产生任何更改。但是,不要忘记ASP.NET控件在JavaScript中也有一个插件(您可以使用它来处理事件和操纵控件)。我认为您需要的是这个示例,请注意,在其中,您具有与WebDialogFrame.aspx中的“显示对话框图像”按钮相同的功能(显示按钮):

protected void btnSelectCommittee_Click(object sender, EventArgs e)
    {
        this.WebDialogWindow1.WindowState = Infragistics.Web.UI.LayoutControls.DialogWindowState.Normal;
    }
“width=“98”
height=“24”alt=”“onclick=“$find(“”)。设置窗口状态($IG.DialogWindowState.Normal);" />
我已经删除了您可以指定为click handler的重要部分,并添加了解释:

<img id="ShowDialogButton" src="<%= this.GetGlobalResourceObject("WebDialogWindow","ClientSideEvents_ShowDialogImage") %>" width="98"
            height="24"  alt="<%= this.GetGlobalResourceObject("WebDialogWindow","Client_Side_Events_Tooltip_1") %>" onclick="$find('<%=WebDialogWindow1.ClientID%>').set_windowState($IG.DialogWindowState.Normal);" />
//显示对话框
函数showDialog(){
//获取对Infragistics.Web.UI.WebDialogWindow实例的引用
变量对话框=$find(“”);
//执行任何必要的检查或跳过检查,可以
//即使对话框已可见,也要设置正常状态
if(dialog.get_windowState()!=$IG.DialogWindowState.Normal)
//将状态设置为正常
dialog.set_windowState($IG.DialogWindowState.Normal);
}

当然,它会刷新页面。服务器端句柄需要它来在远程客户端上产生任何更改。但是,不要忘记ASP.NET控件在JavaScript中也有一个控件(您可以使用它来处理事件和操纵控件)。我认为您需要的是此示例,请注意,在其中,您具有与WebDialogFrame.aspx中显示对话框图像按钮相同的功能(显示按钮):

protected void btnSelectCommittee_Click(object sender, EventArgs e)
    {
        this.WebDialogWindow1.WindowState = Infragistics.Web.UI.LayoutControls.DialogWindowState.Normal;
    }
“width=“98”
height=“24”alt=”“onclick=“$find(“”).set_windowState($IG.DialogWindowState.Normal);”/>
我已经删除了您可以指定为click handler的重要部分,并添加了解释:

<img id="ShowDialogButton" src="<%= this.GetGlobalResourceObject("WebDialogWindow","ClientSideEvents_ShowDialogImage") %>" width="98"
            height="24"  alt="<%= this.GetGlobalResourceObject("WebDialogWindow","Client_Side_Events_Tooltip_1") %>" onclick="$find('<%=WebDialogWindow1.ClientID%>').set_windowState($IG.DialogWindowState.Normal);" />
//显示对话框
函数showDialog(){
//获取对Infragistics.Web.UI.WebDialogWindow实例的引用
变量对话框=$find(“”);
//执行任何必要的检查或跳过检查,可以
//即使对话框已可见,也要设置正常状态
if(dialog.get_windowState()!=$IG.DialogWindowState.Normal)
//将状态设置为正常
dialog.set_windowState($IG.DialogWindowState.Normal);
}

答案相当简单,可以使用
onClientClick=“return showDialog();”

函数showDialog(){
var dialogWindow=$find(“”);
//如果窗口状态是隐藏的,则使用'show()'方法显示窗口
dialogWindow.show();
//使用“hide()”方法隐藏WindowsState
//dialogWindow.hide();
返回false;
}

答案相当简单,可以使用
onClientClick=“return showDialog();”

函数showDialog(){
var dialogWindow=$find(“”);
//如果窗口状态是隐藏的,则使用'show()'方法显示窗口
dialogWindow.show();
//使用“hide()”方法隐藏WindowsState
//dialogWindow.hide();
返回false;
}

为什么需要“如果(dialog.get_windowState()!=$IG.DialogWindowState.Normal)”?为什么不直接使用“dialog.set_windowState($IG.DialogWindowState.Normal);”它不是真的-我想我试过了,最终结果是一样的,只是试着避免不必要的操作(它们非常小,是的)。因此,正如我在代码中的注释中所说的——请随意跳过,这是一个很好的地方,可以对这个逻辑或任何其他逻辑进行常规检查,这些逻辑可能决定是否应该显示对话框。为什么需要使用“if(dialog.get_windowState()!=$IG.DialogWindowState.Normal)”呢?为什么不直接使用“dialog.set_windowState($IG.DialogWindowState.Normal);”它不是真的-我想我试过了,最终结果是一样的,只是试着避免不必要的操作(它们非常小,是的)。因此,正如我在代码中的注释中所说的,可以随意跳过,这是一个很好的地方,可以对这个或任何其他逻辑进行常规检查,这些逻辑可能决定是否应该显示对话框。