テキストフィールドだけで構成される単純な検索フォームがありますが、フィルターがあります(たとえば、「type:」でクエリを開始すると、「type」のデータベース列のみが検索されます)。私が欲しいのは、実際の検索語の前のテキスト(つまり、「type:」)が、検索語ではなくフィルターであることがユーザーにわかるようにスタイル設定することです。実際、ユーザーがタグを入力すると、StackOverflowのTagsテキストフィールドのように見える場合があります(これを参照)。これまでのところ、テキストフィールドで.keypress()メソッドを呼び出して、最初の用語が実際にフィルターであるかどうかを判断していますが、フィルターテキストのスタイルを設定する方法がわかりません。どんな助けでも大歓迎です!
1 に答える
2
SO タグ ボックス (およびその他のソリューション) は、実際には入力ボックス自体のコンテンツのスタイルを設定するのではなく、タグ/フィルターの書式設定をスパンとして先頭に追加し、それに応じて入力ボックスの幅を調整することがわかります。入力ボックス自体はすべてのスタイリングが削除されているため (境界線などはありません)、境界線はスタイル付きの div によって提供されます。したがって、次のような構造が必要です (ところで、これは単純化されたビューです)。
<div class="i am a div styled like an input box with a border">
<span class="i am a filter/tag">Type:</span>
<input type="text" class="i am actual input box with all styling removed">
</div>
フィルターの追加/削除と、入力ボックスのサイズ変更 (フィルター タグの長さに基づく) も処理する必要があります (フィルターが 1 つしかない場合は、固定幅の入力フィールドでおそらく回避できます)...
于 2013-01-13T22:39:39.433 に答える