好的,我有一个asp.net (C#)应用程序,我想在页面上添加一个文件和文件夹列表,所以我想我应该使用JQuery fileTree (http://abeautifulsite.net/2008/03/jquery-file-tree/#download)
但现在我完全无法显示文件列表。
我这样初始化页面:
Site.Master:
<link rel="stylesheet" type="text/css" href="../../Content/superfish.css" media="screen">
<link href="../../Content/jqueryFileTree.css" rel="stylesheet" type="text/css" />
<script src="../../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="../../Scripts/jqueryFileTree.js" type="text/javascript"></script>
<script src="../../Scripts/JqueryUI/js/jquery-ui-1.8.1.custom.min.js" type="text/javascript"></script>
<script type="text/javascript" src="../../Scripts/jquery.dataTables.js"></script>
<script type="text/javascript" src="../../Scripts/superfish.js"></script>
<script type="text/javascript">
$(document).ready(function() {
test = $('#fileTree').fileTree({script: "jqueryFileTree.aspx" }, function(file) {
openFile(file);
});
$("button").button();
oTable = $('#data').dataTable({
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"bSort": true
});
});
</script>在页面中,我这样放了我的div:
<div id="fileTree">但我敢肯定,jqueryFileTree.aspx永远不会被“调用”,因为如果我在控制器中返回这个页面,它会正确地显示文件/文件夹列表,所以这也不是我的aspx连接器的问题……
我还在JS控制台上检查了一下,它没有给出任何错误,页面源代码中也没有更多内容
我一整天都想解决这个问题,但没有成功,所以感谢你的帮助。
编辑:按要求格式化问题,发布jQueryFileTree.aspx:
string dir;
if(Request.Form["dir"] == null || Request.Form["dir"].Length <= 0)
dir = "/";
else
dir = Server.UrlDecode(Request.Form["dir"]);
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(dir);
Response.Write("<ul class=\"jqueryFileTree\" style=\"display: none;\">\n");
foreach (System.IO.DirectoryInfo di_child in di.GetDirectories())
Response.Write("\t<li class=\"directory collapsed\"><a href=\"#\" rel=\"" + dir + di_child.Name + "/\">" + di_child.Name + "</a></li>\n");
foreach (System.IO.FileInfo fi in di.GetFiles())
{
string ext = "";
if(fi.Extension.Length > 1)
ext = fi.Extension.Substring(1).ToLower();
Response.Write("\t<li class=\"file ext_" + ext + "\"><a href=\"#\" rel=\"" + dir + fi.Name + "\">" + fi.Name + "</a></li>\n");
}
Response.Write("</ul>");发布于 2010-06-11 02:54:51
这可能是完全不相关的,但请确保您的第一个链接标记以/>结尾。
<link rel="stylesheet" type="text/css" href="../../Content/superfish.css" media="screen" />你确定你的javascript正在被调用吗?尝试在document.ready函数中添加一个或两个alert("<sample debug message here>"),看看是否调用了什么。
https://stackoverflow.com/questions/3017245
复制相似问题