私は、ユーザーがボタンをクリックしたときと2つの入力フィールドの両方にデフォルト値がある場合にそれらの入力フィールドからクラスを削除するようにしようとしています。2つのフィールドにデフォルト値がある場合
現在のところ、私はそれを複数のフィールドではなく、1つのフィールドでしか動作させることができません。
アイデア? http://jsfiddle.net/3xaBs
ありがとう!
私は、ユーザーがボタンをクリックしたときと2つの入力フィールドの両方にデフォルト値がある場合にそれらの入力フィールドからクラスを削除するようにしようとしています。2つのフィールドにデフォルト値がある場合
現在のところ、私はそれを複数のフィールドではなく、1つのフィールドでしか動作させることができません。
アイデア? http://jsfiddle.net/3xaBs
ありがとう!
それはit works for me次のようになります。
$('#button').click(function() {
var one = $("#fone");
var two = $("#ftwo");
if ( one.val() == one[0].defaultValue
&& two.val() == two[0].defaultValue){
one.removeClass('myclass');
two.removeClass('anotherclass');
}
});
はここでスケーラブルなソリューションだ。この
$('#button').click(function() {
if ($("#fone").val() == 'Hello World' && $("#ftwo").val() == 'Lorem Ipsum'){
$('#fone').removeClass('myclass');
$('#ftwo').removeClass('myclass');
}
});
を試してみてください。グループ内のすべてのフィールドにデフォルト値が設定されている場合は、必要な数だけフィールドを設定することができます。
HTML - カスタムデータ属性を利用するので、 jQueryのは、削除されますクラス:
<input type="text" id="fone" name="fone" class="myclass" data-group="my_fields" data-default="Hello World" value="Hello World" />
<input type="text" id="ftwo" name="ftwo" class="anotherclass" data-group="my_fields" data-default="Lorem Ipsum" value="Lorem Ipsum" />
<a href="#" id="button">Link</a>
をjQueryの - グラブグループ内のフィールド、それらのデフォルト値に現在の値を比較し、カウンタをインクリメントし、合計フィールドの数と比較:
$('#button').click(function(event) {
event.preventDefault();
var default_count = 0;
$('input[data-group=my_fields]').each(function(){
if($(this).val() == $(this).data('default'))
{
default_count++;
}
});
// If all fields have default value still...
if(default_count == $('input[data-group=my_fields]').length)
{
$('input[data-group=my_fields]').removeClass(); // remove all classes
}
});
完全にクラスを削除するか、または特定のクラスを削除しますか? – AlienWebguy
さらにAlienWebguyのポイントは、入力に複数のクラスがある場合はどうなりますか? – vol7ron