配送オプションとして機能する 2 つのラジオボタン (A、B) と、電話番号を入力するための入力テキストフィールドが 1 つあります。A を選択した後、テキスト領域内にカスタム ヘルプ テキストを表示する必要があります (「電話が必要です」)。ボタン B が選択されている場合、ヘルプ テキストは表示されません。
A が選択されている場合、ユーザーがテキストフィールド内をクリックして数字を入力すると、ヘルプテキストが削除されます。いずれかのオプションが選択され、テキストフィールドが入力されている場合。このままでいい。
ユーザーがAオプションを選択し、Bオプションの後に何も入力せずにヘルプテキストが削除されない場合を除いて、私のコードは機能します。
$(document).ready(function () {
$('input#edit-quote-option-flatrate-3---0').change(function () {
if ($('input#edit-quote-option-flatrate-3---0').is(":checked")) {
$('.default').each(function () {
var defaultVal = ('tel');
$(this).focus(function () {
if ($(this).val() == defaultVal) {
$(this).removeClass('active').val('');
}
})
.blur(function () {
if ($(this).val() == '') {
$(this).addClass('active').val(defaultVal);
}
})
.blur().addClass('active');
});
} else {
$('.default').removeClass('active').val('');
}
});
});
完全なコードはこちらhttp://jsfiddle.net/NKcFs/2/