我正在尝试使用ClientScriptManager将JavaScript添加到页面,但是脚本没有被添加到页面。 'trendsTable'包含一个asp:Gridview并且其显示设置为none,但是在单击'RequestReport'时,我希望将数据绑定到gridview,由dataTabletester进行,然后将'trendsTable'的显示设置为表。
protected void RequestReport_Click(object sender, EventArgs e)
{
//method to bind data to table
dataTabletester();
//insert script to make table visible
String csname1 = "PopupScript";
Type cstype = this.GetType();
//Get a Client ScriptManager reference from Page Class
ClientScriptManager cs = Page.ClientScript;
if (!cs.IsStartupScriptRegistered(cstype, csname1))
{
string script = "function() {document.getElementById('trendsTable').style.display = \"table\";}";
StringBuilder cstext1 = new StringBuilder();
cstext1.Append("<script type=text/javascript>");
cstext1.Append(script);
cstext1.Append("</script>");
cs.RegisterStartupScript(cstype, csname1, cstext1.ToString());
}
}
感谢任何可以提供帮助的人。
最佳答案
您正在定义一个函数,但未调用它。更改:
string script = "function() {document.getElementById('trendsTable').style.display = \"table\";}";
至
string script = "document.getElementById('trendsTable').style.display = \"table\";";
关于c# - 使用ClientScriptManager将JavaScript添加到页面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23553686/