我正在向我的 ascx.cs 用户控件动态添加控件,因此我还需要从我的 ascx.cs 用户控件动态执行 javascript 代码。
我正在使用以下方法执行我的 javascript:
Page.ClientScript.RegisterStartupScript(typeof(Page), "reOpen", "<script type='text/javascript'> reOpenClick(); </script>")
这是我在 ascx 文件中的 javascript
<%@ Register Assembly="obout_Window_NET" Namespace="OboutInc.Window" TagPrefix="obout" %>
<obout:Window runat="server" ID="ow_dialog" Width="200" Height="50"
Title="Open" IsModal="true" ShowCloseButton="true"
StyleFolder="~/Styles/obout/window/grandgray" VisibleOnLoad="false">
.
.
.
.
</obout:Window>
<script type="text/javascript">
function reOpenClick() {
ow_dialog.setTitle("Open");
ow_dialog.screenCenter();
ow_dialog.Open();
}
</script>
像往常一样运行代码时出现错误ReferenceError: ow_dialog is not defined
。但是,当在 Web 浏览器的控制台中键入 reOpenClick() 时,一切运行正常。
为什么我ReferenceError: ow_dialog is not defined
在控制台中输入函数时会正常工作?