1

だから、ここに必要性があります。

毎日いくつかのディレクトリにアクセスすると、デスクトップはショートカットでいっぱいになります。これをなくしたい。そこで、入力時にオートコンプリートされ、クリックすると開くディレクトリ名のリストを持つ単純な Web ページを使用するというアイデアを思いつきました (これらの名前はローカル データソースから取得されます)。ディレクトリ。それをクリックして 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>

Jクエリ:

$(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 に答える