我有一个母版页面Web应用程序。在该应用程序中,我需要一个弹出窗口来打开显示多个链接。当用户从下拉列表中选择值时,窗口应该打开。在VS2010和Dev服务器上本地运行站点时,以下两种方法都可以正常工作。当移动到UAT服务器时,它不再触发并且不会出错。如果我将UAT上的Web配置文件替换为Dev中的Web配置文件,则它会正确触发。但是,当我更新Web配置文件以便它将连接字符串指向UAT服务器时,它会中断。我尝试过以下方法;
这是在网站的其他部分使用的代码,并继续正常工作
protected void ddCFPBCategories_SelectedIndexChanged(object sender, EventArgs e)
{
if (this.ddCFPBCategories.SelectedValue.ToString() == "3rd Party Bad Phone")
{
String csname1 = "myWindow";
System.Text.StringBuilder sb = new System.Text.StringBuilder("var winRef = window.open('BadPhone.aspx',null,'width=900,height=400, status=yes, resizeable=no, scrollbars=no,menubar=no');");
Type cType = this.GetType();
if (!Page.ClientScript.IsStartupScriptRegistered(cType, csname1))
{
this.Page.ClientScript.RegisterStartupScript(cType, csname1, sb.ToString(), true);
}
}
}
这里我尝试使用javascript onchange 这是在
<asp:DropDownList ID="ddCFPBCategories" runat="server"
DataSourceID="ComplaintType" DataTextField="Descriptoin"
DataValueField="Descriptoin" onchange="javascript:dypopup(this,'3rd Party Bad Phone','BadPhone.aspx',700,300,'yes','no','no','no')" >
</asp:DropDownList>
这是在Site.master中:
<script type="text/javascript" src="../jquery-1.6.1.js"></script>
<script type="text/javascript">
function dypopup(ddl,testvalue,url,w,h,status,resize,scroll,menu) {
if (ddl.value == testvalue)
{
window.open(url, null, 'width='+ w +',height='+ h +', status='+ status +', resizeable=' + resize +', scrollbars=' + scroll +',menubar=' + menu +"'")
}
}
答案 0 :(得分:0)
我发现了这个问题并且与数据有关。面板中的对象没有填充。毕竟它不是面板代码。