Safari 表单 POST 禁用单选按钮

问题描述 投票:0回答:0

几个月来我们一直使用相同的 HTML 和 PHP。突然之间,Safari 似乎改变了它提交单选按钮的方式。在提交时,我们正在运行一个 JS 函数来验证所有输入。

form.addEventListener('submit', function(event) {
    event.preventDefault();
    form.querySelectorAll('input.ignore[type="radio"]').forEach( /** @param {HTMLInputElement} radio */ function(radio) {
        console.log(radio.disabled); // OUTPUT: false
        radio.disabled = true;
        console.log(radio.disabled); // OUTPUT: true
        _func_setHiddenFIeld();      // we set the value of the checked Radio button as value of the hidden input
    });
});


<form action="/form/debug.php" method="POST" target="_blank">
    <input type="hidden" class="" name="TEST1" value="">
    <label for="ID1">
        <input class="form-radio ignore" required="required" data-field="TEST1" type="radio" id="ID1" name="ignore_TEST1" value="one">
        one
    </label>
    <label for="ID2">
        <input class="form-radio ignore" required="required" data-field="TEST1" type="radio" id="ID2" name="ignore_TEST1" value="two">
        two
    </label>
</form>

所有浏览器(Edge/Firefox/Chrome/Opera)只发布

name="TEST1"
这个字段。除了 Safari,Safari Posts 有两个字段
name="TEST1"
加上选中的单选按钮
name="ignore_TEST1"
name="ignore_TEST2"
.

有什么改变吗?

javascript html forms safari
© www.soinside.com 2019 - 2024. All rights reserved.