私はウェブサイトを作っていますが、IE8と互換性があります。私は私のページに単純なフォームがあり、ラジオボタンを使用して、フォームのどのフィールドセットが表示されているかを変更しています。基本的に私はユーザーに彼の名前または彼の番号を入力するオプションを与えています。私はF12メニューのIE8互換モードでW10でIE11を使用していますが、切り替えは機能しません。これはIE9 +でもどこでも動作します。何が問題なのか知っていますか?IE8でテストしたところ、私のJavascriptが動作しません
両方のラジオボタンには、display:noneとdisplay:blockのフィールドセットを設定するonclick関数があります。 "header__form__fs_person"はデフォルトでは表示されません。
HTML:
<form class="header__form" name="form_name">
<fieldset class="header__form__label_choices">
<label class="header__form__label" for="person">Podle jména</label>
<input class="header__form__input_radio" type="radio" value="person_on" id="person" name="choice" onclick="hideIc(this)" checked>
<span class="header__form__divider">/</span>
<label class="header__form__label" for="ic">Podle IČ</label>
<input class="header__form__input_radio" type="radio" value="ic_on" id="ic" name="choice" onclick="hidePerson(this)">
</fieldset>
<fieldset class="header__form__fs_person">
<input class="header__form__input_text" type="text" id="name" placeholder="Jméno" required>
<input class="header__form__input_text" type="text" id="lastname" placeholder="Příjmení" required>
<input class="header__form__input_text" type="text" id="bday" placeholder="Narozen" onfocus="(this.type='date')" required>
</fieldset>
<fieldset class="header__form__fs_ic" disabled>
<input class="header__form__input_text" pattern=".{9,}" placeholder="123456789" required>
</fieldset>
<label class="header__form__terms" for="terms">Souhlasím s <a class="header__form__terms_a" href="">obchodnimi podmínkami</a></label>
<input class="header__form__input_checkbox" type="checkbox" id="terms" required>
<input class="header__form__input_btn" type="submit" value="Ověřit">
</form>
JS:
<script>
function hideIc(radio_btn) {
if (radio_btn.checked) {
var ic = document.getElementsByClassName("header__form__fs_ic");
var person = document.getElementsByClassName("header__form__fs_person");
for (var i=0; i < ic.length; i++) {
ic[i].style.display = "none";
ic[i].disabled = true;
person[i].style.display = "block";
person[i].disabled = false;
}
}
}
function hidePerson(radio_btn) {
if (radio_btn.checked) {
var ic = document.getElementsByClassName("header__form__fs_ic");
var person = document.getElementsByClassName("header__form__fs_person");
for (var i=0; i < ic.length; i++) {
ic[i].style.display = "block";
ic[i].disabled = false;
person[i].style.display = "none";
person[i].disabled = true;
}
}
}
</script>
何specifally問題となっているエラーは何ですか?パターンとプレースホルダはシムなしではサポートされません。 – charlietfl
エラーはありません。機能しないだけです。何も起こらないラジオボタンをクリックすると何も隠れず、何も表示されません。また、パターンやプレースホルダは私が見ていないものです。どうすればそれらを機能させることができますか? – Arcane