在我的asp页面中有一个文本框名称“ProductName”
如果我在该文本框中写任何东西并刷新该页面,则firefox中的文本框不清楚。但我在Internet浏览中打开同一页面,在文本框中写任何东西并刷新页面,我的文本框清晰明了
为什么FireFox中的文本框不明确?
这是html代码
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>New Page 1</title>
</head>
<body>
<input type="text" id="ProductName" name="ProductName" style="width:235; height:20" value="">
</body>
</html>
答案 0 :(得分:10)
这是Firefox的一个功能(我非常喜欢)。在服务器端你无能为力。
编辑:
较长的版本:你可以做些什么,但它非常混乱。基本上,Firefox实现这一点的方式是在用户点击刷新按钮时重新填充具有相同名称的表单元素。
解决方法是每次加载页面时更改HTML表单元素的name
属性。你如何跟踪你改变它们的方式是由你自行决定的,但我只想说,作为一个Firefox用户,拥有一个网站这样做会让我烦恼不已。
答案 1 :(得分:6)
“其实firefox就是那么愚蠢。” - 是的。
另一种方法是在输入
上设置autocomplete =“off”答案 2 :(得分:4)
您可以将autocomplete="off"
属性添加到输入中,如下所示,它应该可以解决问题。
<input type="text" id="ProductName" name="ProductName" style="width:235; height:20" value="" autocomplete="off">
答案 3 :(得分:3)
其实firefox就是这样愚蠢的。假设您有一个复选框,当用户点击激活该复选框时,会有一个淡入的div。这里的问题是,如果您刷新页面,您的复选框将保持活动状态,但您的div将被隐藏。他们(firefox)并没有想到这一切,那就是......愚蠢。因此你必须诉诸js变通办法(我不太喜欢)。
我同意你需要在某些输入中使用相同的值,例如当你提交页面时,会出现错误,你需要将用户重定向回包含表单的页面。那么是啊!好吧!你需要价值......但要保持价值刷新,那就是愚蠢。
用户输入他的详细信息然后只是想“嗯我现在只按f5看看会发生什么”。如果那是那种用户“漫游”你的网站,请关闭它,这是愚蠢的
好的,现在已经不在了。
每次页面加载时,“更改HTML表单元素的name属性” 这是一个坏主意,不要这样做......
相反,您可以使用简单获取输入的js函数并将值设置为“”
onpageload:
document.getElementById('inp1').value = '';
document.getElementById('inp2').value = '';
document.getElementById('inp3').value = '';
依此类推。 附:这只是一个例子,你的工作是看,适合你的东西(无论是jquery,prot还是其他);看你是否使用for循环;等
答案 4 :(得分:3)
Firefox并不是那么愚蠢。这是合适的行为,因为可能是你的衰落发生在一个事件上onclick,onchange等等。由于该事件不会在刷新时触发,因此Firefox没有理由显示您的div。您有责任编写触发事件onload或文档准备就绪所需的js。
返回主题:一个简单的解决方案是将表单的自动完成属性设置为“关闭”
就是这样。
答案 5 :(得分:1)
HTMLFormElement
个实例会继承reset
方法。
它可用于将所有表单清除为其默认值:
for(var i=0; i<document.forms.length; ++i)
document.forms[i].reset();
答案 6 :(得分:0)
针对此问题添加
autocomplete="off"
attr输入标签,例如:
<input type="text" autocomplete="off" id="ProductName" name="ProductName" style="width:235; height:20" value="">
答案 7 :(得分:0)
您可以使用 Ctrl + Shift + R 命令强制重新加载(不是来自缓存)(请参阅http://www-archive.mozilla.org/docs/end-user/moz_shortcuts.html上的页面导航快捷方式)