1

所以,这就是需要。

我每天访问几个目录,我的桌面充满了快捷方式。我想消除这个。所以我想出了一个想法,我将使用一个简单的网页,该网页将有一个目录名称列表(这些名称将来自本地数据源),当我键入时会自动完成,当我点击它们时,它们应该打开目录。它更像是点击它打开一个 URL。你明白吗?

我使用了 jQuery UI 中的代码。

<!DOCTYPE html>
<html lang="en">
<head>

<meta charset="utf-8">
<title>jQuery UI Autocomplete - Default functionality</title>
<link rel="stylesheet" href="css/redmond/jquery-ui-1.8.20.custom.css">
<script src="js/jquery-1.7.2.min.js"></script>
<script src="js/jquery-ui-1.8.20.custom.min.js"></script>

<link rel="stylesheet" href="../demos.css">
<script>
$(function() {
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Python",
"Ruby",
"Scala",
"Scheme"
];
$( "#tags" ).autocomplete({
source: availableTags
});
});
</script>
</head>
<body>

<div class="demo">
<div class="ui-widget">
<label for="tags">Tags: </label>
<input id="tags" />
</div>

</div><!-- End demo -->



</body>
</html>

提前致谢。

4

1 回答 1

0

如果它是asp.net,那么我会这样做

标记:

<asp:TextBox runat="server" ID="txtFileS" ></asp:TextBox>

查询:

$(document).ready(function() {
            $('#txtFileS').autocomplete({
                source: function(request, response) {
                    $.ajax({
                    url: "Default.aspx/GetFileList",
                        data: "{ 'query': '" + request.term + "' }",
                        dataType: "json",
                        type: "POST",
                        contentType: "application/json; charset=utf-8",
                        dataFilter: function(data) { return data; },
                        success: function(data) {
                            response($.map(data.d, function(item) {
                                return {
                                    value: item
                                };
                            }));
                        }
                    });
                }

            });
        }); 

服务器端方法:

   [WebMethod]
    public static string[] GetFileList(string query)
    {
        var s = Directory.GetFiles("C:\\").ToArray();
        return s;  // you need to filter the array according to the query. 
    }

PS:您需要在键入时过滤查询。在服务器端代码中。

于 2012-05-14T10:28:52.917 回答