技术开发 频道

服务器不支持WebResource.axd的特殊处理

    遇到一个服务器,居然不支持WebResource.axd,树型控件不能折叠,而且左边的+、-号全部是X号。

    这个时候,如果没有办法让管理员加上支持,只好采用比较特殊的方法来解决了。

    首先,你会看到有树型控件的网页里面,引入了两JS文件,大概是

<script src='WebResource.axd?id=xxxxx' type='text/javascript' />

    这样的地址,这时候,先在本地(可以使用WebResource.axd),打开这个页面,然后在地址栏输入这两个JS的地址,另存为WebResource1.js和WebResource2.js。然后,在这个页面里面引用这两个JS。

<script src='WebResource1.js' type=..... /> <script src='WebResource2.js' type=..... />

    接着,右击+号(加号)图片,另存为2.gif,右击-号(减号)图片,另存为1.gif。放在网站目录下,这里假设是根目录。这样就把树型结构所有支持的东西都准备好了。

    在页面最后加上:

<script type="text/javascript" defer> <!-- try { tvClass_ImageArray = new Array('', '', '', '/1.gif', '/2.gif', '/1.gif'); WebForm_InitCallback();var tvClass_Data = new Object(); tvClass_Data.images = tvClass_ImageArray; tvClass_Data.collapseToolTip = "折叠 {0}"; tvClass_Data.expandToolTip = "展开 {0}"; tvClass_Data.expandState = theForm.elements['tvClass_ExpandState']; tvClass_Data.selectedNodeID = theForm.elements['tvClass_SelectedNode']; tvClass_Data.hoverClass = 'tvClass_8'; tvClass_Data.hoverHyperLinkClass = 'tvClass_7'; for (var i=0;i<6;i++) { var preLoad = new Image(); if (tvClass_ImageArray[i].length > 0) preLoad.src = tvClass_ImageArray[i]; } tvClass_Data.lastIndex = 17; tvClass_Data.populateLog = theForm.elements['tvClass_PopulateLog']; tvClass_Data.treeViewID = 'tvClass'; tvClass_Data.name = 'tvClass_Data'; } catch(ex) { } // --> </script><script language="javascript" type="text/javascript" defer> for(var index = 0; index < document.images.length ; index ++) { var img = document.images[ index ]; if(img && img.src) { if(img.src.indexOf('WebResource.axd') > -1) { img.src = '/1.gif'; } } } </script>

    以上代码是假设会展开的情况下。这样,树型结构就可以正常使用了。

0
相关文章