php – firefox在地址栏中有“#;”

前端之家收集整理的这篇文章主要介绍了php – firefox在地址栏中有“#;”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

为什么firefox(未在其他浏览器中测试)在#;时加载表单值时出现问题;在地址栏中?
如果我有< input type ='radio'check =“checked”>,地址栏中此元素的存在可能导致输入未实际检查(如预期的那样)

我该如何避免这种行为?

示例代码

    Meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    PHP $rnd = mt_rand(1,4); ?>

            

Edit2:稍微清理了一下代码,添加了一个回音

最佳答案
通过阅读有关问题的评论,答案似乎很清楚.

问题是Firefox在您重新加载页面时会尝试记住表单的状态,其中包括选中哪些复选框以及哪些复选框未选中.因此,即使您在重新加载时更改HTML中的默认值,Firefox也会将其视为相同的表单,并忽略HTML中设置的默认值,而不是重新加载之前保存的内容.

我听说你可以通过提供HTTP头Cache-Control:no-store,或者在表单元素上指定autocomplete =“off”来禁用此行为.但我没有亲自测试过这两种解决方案.或者您可以使用Javascript在页面加载时重置表单(使用表单对象的reset()或通过显式设置每个字段的值).

猜你在找的HTML相关文章