服务器不支持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>
以上代码是假设全展开的情况下。
这样,树型结构就可以正常使用了。
原文地址:https://www.cnblogs.com/fyan888/p/TreeList.html