关于.text中AdvancedPanel中展开按钮在页面执行时有时会出错的问题
这个问题可能与项目存放的位置有关(我这两天分析出来的,呵呵,主要是注册一个脚本(uicontrols.js)时出错)
经过分析,我把 Admin/webUI/controls/AdvancedPanel.cs 文件中的protected override void OnPreRender(EventArgs e)
进行了修改,修改如下:
原理为
protected override void OnPreRender(EventArgs e)
{
if (Collapsible)
{Page.RegisterClientScriptBlock(CLIENT_SCRIPT_KEY,
Utilities.GetClientScriptInclude(CLIENT_SCRIPT_FILE));
}
现在改为:
protected override void OnPreRender(EventArgs e)
{
if (Collapsible)
{

string script = "<script language=\"javascript\">";
script = script
+"function ToggleVisible(targetID, imageID, linkImage, linkImageCollapsed)"
+"{"
+" if (document.getElementById){"
+" target = document.getElementById(targetID);"
+" if (target.style.display == \"none\") {"
+" target.style.display = \"\";"
+" } else {"
+" target.style.display = \"none\";"
+" }"
+" if (linkImageCollapsed != \"\") {"
+" image = document.getElementById(imageID);"
+" if (target.style.display == \"none\") {"
+" image.src = linkImageCollapsed;"
+" } else {"
+" image.src = linkImage;"
+" }"
+" }"
+" }"
+"}"
+"</script>";

Page.RegisterClientScriptBlock(CLIENT_SCRIPT_KEY,
script);

base.OnPreRender(e);
}然后就正常了,其实就是把脚本uicontrols.js中的内容直接在这里写出来,直接注册一个脚本块,而不是文件,就正常了,百思不得其解,为什么会出现这个问题,有待高手指教,谢谢
然后就正常了,其实就是把脚本uicontrols.js中的内容直接在这里写出来,直接注册一个脚本块,而不是文件,就正常了,百思不得其解,为什么会出现这个问题,有待高手指教,谢谢
经过分析,我把 Admin/webUI/controls/AdvancedPanel.cs 文件中的protected override void OnPreRender(EventArgs e)
进行了修改,修改如下:
原理为
protected override void OnPreRender(EventArgs e)
{
if (Collapsible)
{Page.RegisterClientScriptBlock(CLIENT_SCRIPT_KEY,
Utilities.GetClientScriptInclude(CLIENT_SCRIPT_FILE));
}
protected override void OnPreRender(EventArgs e)
{
if (Collapsible)
{
string script = "<script language=\"javascript\">";
script = script
+"function ToggleVisible(targetID, imageID, linkImage, linkImageCollapsed)"
+"{"
+" if (document.getElementById){"
+" target = document.getElementById(targetID);"
+" if (target.style.display == \"none\") {"
+" target.style.display = \"\";"
+" } else {"
+" target.style.display = \"none\";"
+" }"
+" if (linkImageCollapsed != \"\") {"
+" image = document.getElementById(imageID);"
+" if (target.style.display == \"none\") {"
+" image.src = linkImageCollapsed;"
+" } else {"
+" image.src = linkImage;"
+" }"
+" }"
+" }"
+"}"
+"</script>";
Page.RegisterClientScriptBlock(CLIENT_SCRIPT_KEY,
script);
base.OnPreRender(e);
}然后就正常了,其实就是把脚本uicontrols.js中的内容直接在这里写出来,直接注册一个脚本块,而不是文件,就正常了,百思不得其解,为什么会出现这个问题,有待高手指教,谢谢

浙公网安备 33010602011771号