重新加载页面后“已检查”属性不起作用

Posted

技术标签:

【中文标题】重新加载页面后“已检查”属性不起作用【英文标题】:"Checked" attribute not working after reloading page 【发布时间】:2018-11-05 09:00:22 【问题描述】:

我有一些 html 代码用于一个如下所示的网站:(带有一些更改的变量)

<div class="radio">
    <label>
    <input type="radio" name="radio2" class="radio2" value="YES">
    YES 
    </label>
</div>
    <div class="radio">
    <label>
    <input type="radio" name="radio2" class="radio2" value="NO" checked="checked">
    NO
    </label>
</div>

这工作得很好,当我第一次加载页面时会自动检查“否”,但是当我检查是然后再次重新加载时,会自动检查“是”选项而不是“否”选项。这是一个问题,因为在检查是时,我会显示更多信息,默认应该是“否”并且不显示任何额外信息。 我试过了:

    <input type="radio" name="radio2" class="radio2" value="NO" checked="checked">

    <input type="radio" name="radio2" class="radio2" value="NO" checked="true">

    <input type="radio" name="radio2" class="radio2" value="NO" checked>

<input type="radio" name="radio2" class="radio2" value="YES" checked="false">    
<input type="radio" name="radio2" class="radio2" value="NO" checked="true">

但每当我选中“是”时,下次我加载页面时,“是”就会再次被选中。我正在使用 Firefox,使用隐私浏览没有帮助。

【问题讨论】:

【参考方案1】:

你可以尝试使用js,这里是fiddle

HTML:

<form>
    <div class="radio">
        <label>
            <input id="yes" type="radio" name="radio2" class="radio2" value="YES" checked="checked">
            YES 
            </label>
    </div>
    <div class="radio">
        <label>
            <input id="no" type="radio" name="radio2" class="radio2" value="NO">
            NO
            </label>
    </div>
    <input type="submit">
</form>

JS:

$(document).ready(function() 
  $('#no').prop('checked', 'checked');
);

【讨论】:

以上是关于重新加载页面后“已检查”属性不起作用的主要内容,如果未能解决你的问题,请参考以下文章

在 AWS Amplify 控制台上部署为 SPA 后,Nuxtjs 动态路由在页面重新加载时不起作用

分页在 GridMvc 上不起作用,它正在重新加载页面

为啥当我更改静态文件并重新加载页面时 spring devtools 不起作用?

Ajax加载后按钮上的JQuery HTML onclick属性不起作用

从 vue 更新 firestore,然后重新加载页面以获取更新的数据(不起作用)

.click() 在单选按钮上不起作用