この記事の例では、js テキスト ボックスの入力内容に対するスマート プロンプト効果コードについて説明します。皆さんの参考に共有してください。詳細は以下の通りです。
実行中のエフェクトのスクリーンショットは次のとおりです:
一般的な考え方:
1. テキスト ボックスのイベントをリッスンします。使用されるキーアップ イベントは次のとおりです。 onchange イベントを使用してみることができます。でもキーアップイベントの効果の方が良いような気がします。
2. 入力内容に応じてajax経由でバックグラウンドデータに非同期にアクセスします。
3. 返されたデータをスキャンし、表示領域にデータを追加します。
4. データを追加するときに、各データにエフェクトを追加して、テキスト ボックスにデータを入力します。プロンプトの内容は消えます。
5. 背景データを json 形式に結合する必要があります。
具体的なコードは次のとおりです:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>自动提示</title> <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script> <script type="text/ecmascript"> function txtchange() { var nnmae = $("#intxt").val(); $.ajax({ type: "post", url: "ashx/AutoNote.ashx", data: { name: nnmae }, dataType: "json", success: function (data) { $("#tbcontent").html(""); //删除原有数据 if (data != "null") { for (var i = 0; i < $(data).length; i++) { $("#tbcontent").append('<div class="item" onclick="mousedown(this)">' + data[i].name + '</div>'); } $("#tbcontent").slideDown(); } } }); } //选择其中的提示内容 function mousedown(object) { $("#intxt").val($(object).text()); $("#tbcontent").fadeOut(); } //文档框失去焦点,隐藏提示内容 function lost() { $("#tbcontent").fadeOut(); } </script> <style type="text/css"> .item:hover { background-color: Gray; cursor:pointer; } .show { width: 200px; z-index: 10; display: block; } .hidden { width: 200px; z-index: 10; display: none; border:1px solid rgb(80,160,91); border-top:none; } table tr td { margin:none; padding:none; border:none; } </style> </head> <body> <form id="form1" runat="server"> <div style="width: 210px; margin-left:auto; margin-right:auto"> <table> <tr> <td> <input type="text" style="width: 200px;" id="intxt" onkeyup="txtchange()" onblur="lost()"/> </td> </tr> <tr> <td> <div id="tbcontent" class="hidden"> </div> </td> </tr> </table> </div> </form> </body> </html>
js テキスト ボックスの入力内容に対するインテリジェントなプロンプト効果は、情報を入力したり検索したりするのに非常に実用的です。この記事が JavaScript プログラミングの学習に役立つことを願っています。