如何运行在C#中声明的html主体和在C#中宣布的JavaScript的加载
本文关键字:主体 加载 JavaScript html 何运行 声明 运行 | 更新日期: 2023-09-27 17:59:54
我需要创建一个函数,在其中我必须创建Html文件,在该文件中用c#编写,如
string strHTMLGrid = "";
strHTMLGrid = strHTMLGrid + "<body id='body1' onload='OpenCube()'>";
strHTMLGrid = strHTMLGrid + "<h1>" + sHeading + "</h1>";
strHTMLGrid = strHTMLGrid + "<div id='EVObject_xml' style='margin: 0px; position: absolute; top: 12px; left: 0px; bottom: 0px; right: 0px; '>";
strHTMLGrid = strHTMLGrid + "<object name='EVObject' width='100%' height='100%' id='EVObject' codebase='" + sUrlHtml + "' lang='en-US' classid='clsid:80AC1200-0BBE-499A-A9E9-5F334DBC8E89'>";
strHTMLGrid = strHTMLGrid + "<param name='Server' value='" + sServername1 + "'>";
strHTMLGrid = strHTMLGrid + "<param name='Server' value='" + sTheme1 + "'>";
strHTMLGrid = strHTMLGrid + "<param name='Server' value='" + sHeading + "'>";
strHTMLGrid = strHTMLGrid + "</object>";
strHTMLGrid = strHTMLGrid + "</div>";
strHTMLGrid = strHTMLGrid + "<div id='ribbon'>";
strHTMLGrid = strHTMLGrid + "<div id='backstage - container'> </div>";
strHTMLGrid = strHTMLGrid + "</div>";
strHTMLGrid = strHTMLGrid + "</body>";
在这篇文章中,我已经声明了一个加载中的函数,一个名为opencube()的函数,我需要在主体的加载中用c#调用它
string jScriptValidator;
jScriptValidator = "<script> function OpenCube()" + "'n";
jScriptValidator = "<script> { 'n";
jScriptValidator += "EVObject.Enable(UIAuthorisationType.UIAuthorisationToolbar, true); 'n ";
jScriptValidator += "EVObject.Enable(UIAuthorisationType.UIAuthorisationTabBar, true); 'n";
jScriptValidator += "EVObject.TabBarPosition = TabBarPositionType.TabBarPositionBottom; 'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.UIAuthorisationToolbarText, false); 'n";
jScriptValidator += "EVObject.ToolBar.LargeButtons = false; 'n";
jScriptValidator += "EVObject.Enable(UIAuthorisationType.UIAuthorisationLocalViews, false)'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.ActionAuthorisationDataEntry, false);'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.ActionAuthorisationSaveView, true);'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.ActionAuthorisationExport, true);'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.ActionAuthorisationExportToExcel, true);'n";
jScriptValidator += "EVObject.ViewLocations = 'General =/';'n";
jScriptValidator += "EVObject.object.attachEvent('NeedDataSourceCredentials', DataSourceCredentials); 'n";
jScriptValidator += "EVObject.Enable(EVObject.object.attachEvent('NeedServerCredentials', ServerCredentials);'n";
jScriptValidator += "EVObject.Views.Open('/ Outdb / mis');'n";
jScriptValidator += " LeaveBackstage(); 'n";
jScriptValidator += "ExpandRibbons(false); 'n";
jScriptValidator += "ShowBackstage(false); 'n";
jScriptValidator += " } </script>";
现在我不知道如何将两者联系起来。
您可能需要在html字符串中插入包含脚本的字符串。为了做到这一点,首先声明脚本字符串:
我相信您已经两次声明了script标记的打开,也许您还需要添加document.ready函数,以便在加载html后脚本能够正确执行。
string jScriptValidator;
jScriptValidator = "<script> function OpenCube()" + "'n";
jScriptValidator = "<script> { 'n";
jScriptValidator += "EVObject.Enable(UIAuthorisationType.UIAuthorisationToolbar, true); 'n ";
jScriptValidator += "EVObject.Enable(UIAuthorisationType.UIAuthorisationTabBar, true); 'n";
jScriptValidator += "EVObject.TabBarPosition = TabBarPositionType.TabBarPositionBottom; 'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.UIAuthorisationToolbarText, false); 'n";
jScriptValidator += "EVObject.ToolBar.LargeButtons = false; 'n";
jScriptValidator += "EVObject.Enable(UIAuthorisationType.UIAuthorisationLocalViews, false)'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.ActionAuthorisationDataEntry, false);'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.ActionAuthorisationSaveView, true);'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.ActionAuthorisationExport, true);'n";
jScriptValidator += "EVObject.Allow(ActionAuthorisationType.ActionAuthorisationExportToExcel, true);'n";
jScriptValidator += "EVObject.ViewLocations = 'General =/';'n";
jScriptValidator += "EVObject.object.attachEvent('NeedDataSourceCredentials', DataSourceCredentials); 'n";
jScriptValidator += "EVObject.Enable(EVObject.object.attachEvent('NeedServerCredentials', ServerCredentials);'n";
jScriptValidator += "EVObject.Views.Open('/ Outdb / mis');'n";
jScriptValidator += " LeaveBackstage(); 'n";
jScriptValidator += "ExpandRibbons(false); 'n";
jScriptValidator += "ShowBackstage(false); 'n";
jScriptValidator += " } </script>";
一旦有了脚本标记,就可以将其插入html字符串中。在正文标签关闭之前检查行
string strHTMLGrid = "";
strHTMLGrid = strHTMLGrid + "<body id='body1' onload='OpenCube()'>";
strHTMLGrid = strHTMLGrid + "<h1>" + sHeading + "</h1>";
strHTMLGrid = strHTMLGrid + "<div id='EVObject_xml' style='margin: 0px; position: absolute; top: 12px; left: 0px; bottom: 0px; right: 0px; '>";
strHTMLGrid = strHTMLGrid + "<object name='EVObject' width='100%' height='100%' id='EVObject' codebase='" + sUrlHtml + "' lang='en-US' classid='clsid:80AC1200-0BBE-499A-A9E9-5F334DBC8E89'>";
strHTMLGrid = strHTMLGrid + "<param name='Server' value='" + sServername1 + "'>";
strHTMLGrid = strHTMLGrid + "<param name='Server' value='" + sTheme1 + "'>";
strHTMLGrid = strHTMLGrid + "<param name='Server' value='" + sHeading + "'>";
strHTMLGrid = strHTMLGrid + "</object>";
strHTMLGrid = strHTMLGrid + "</div>";
strHTMLGrid = strHTMLGrid + "<div id='ribbon'>";
strHTMLGrid = strHTMLGrid + "<div id='backstage - container'> </div>";
strHTMLGrid = strHTMLGrid + "</div>";
strHTMLGrid = strHTMLGrid + jScriptValidator;
strHTMLGrid = strHTMLGrid + "</body>";
这是你想要的吗??