jQuery を使用して、サイトのすべての入力フィールドの右側にクリア ボタン (X) を動的に追加したいと考えています。いくつかの例を見た後、これらすべてで実際の入力フィールドを変更する必要がありましたが、これは明らかにサイト全体で行うことはできません。
使用できる簡単な jquery スクリプトはありますか? 「テキスト」タイプのすべての入力フィールドにクリア ボタンを追加するスクリプト。クラス問わず。
ありがとう!
以下のセレクターを使用できます。
var $inputs = $('input[type=text]')
これにより、テキスト型のすべての入力が選択され、ロジックが実行されます。
入力ごとに異なる実行したい内部ロジックがある場合は、 a を使用し$.each
て入力を反復処理し、ロジックを実行します
$inputs.each(function() {
// Perform your logic
});
極端なラフドラフト。
$('input[type=text]').each(function(){
var $this = $(this);
$('<div class="clrInput"/>').css({
position:'absolute',
left: $this.offset().left + $this.width() + 10, //10 for extra spacing from edge
top: $this.offset().top,
width: $this.height(),
height: $this.height()
}).text(' X ').data('inputEQ', $this.index()).appendTo('body');
});
$(document).on('click', '.clrInput', function(){
$('input[type=text]').eq($(this).data('inputEQ')).val('');
});
ノート
パフォーマンスを維持document
するには、最も近い静的な親要素に置き換えます。