jQueryを使用して入力フィールドが「必須」かどうかを切り替えるために使用しているチェックボックスがあります。これは Foundation Abide 検証の一部です。そのため、入力フィールドの末尾に「必須」という単語を追加/削除する必要があります。
このボックスはデフォルトでオンになっています。ユーザーがボックスのチェックを外すと、必要に応じて入力に「必須」が追加されます (そうでない場合)。ただし、ボックスを再チェックすると、「removeProp」は「required」を削除しません。これで何が間違っていますか?同じ結果でpropとattr関数の両方を試しました。
<input type="checkbox" id="billing" checked>
<input type="text" id="b_name" pattern="alpha" required>
$('#billing').change(function() {
// Same as Shipping Address
if ($(this).is(':checked')) {
$('#b_name').removeProp('required');
}
else if (!$(this).is(':checked')) {
$('#b_name').prop('required', true);
}
});