Firefox(可能还有其他浏览器)希望保留用户在文本输入中输入的任何文本,即使重新加载也是如此。只是在html中包含默认文本(我希望输入恢复)不起作用:
<input tyep='text' value='default text' />
也没有尝试使用JS
window.onload = function() {document.getElementById("mytextinput").value = 'default text'}
答案 0 :(得分:18)
您可以使用普通的旧HTML :)
在属性
中设置autocomplete='off'
<input type='text' value='default text' autocomplete='off' />
这适用于大多数现代浏览器。
答案 1 :(得分:3)
从技术上讲,您不必运行onload函数来清除它 - 您只需将javascript放在页面中即可。例如:
document.getElementById("mytextinput").value = ''
或使用jQuery
$("mytextinput").val('');
请注意,使用dom侦听器始终是一个好主意,以确保在正确构建dom后启动javascript。所以,在jQuery的例子中,这就像
一样简单$(document).ready(function() {
$("mytextinput").val('');
});
答案 2 :(得分:0)
试试这个:
<input type='text' id='mytextinput' value='default text' />
<script>
document.getElementById("mytextinput").value = 'default text';
</script>
此代码应在文本框加载后立即运行。 onload事件似乎不一致,我不完全确定它在多个浏览器中如何在不同的操作(如刷新)上运行。
你可以用不同的方式调用脚本,把它放在一个函数中,把它放在其他地方等等,但最好从一个工作版本开始。
如果这在其他浏览器上不起作用,那么您可以做的事情就不多了,因为有些浏览器会尝试“有用”并且总是为您自动填充。
答案 3 :(得分:0)
我认为您应该在页面重新加载时进行服务器端编码。页面重新加载通常是一种回发类型的想法。页面从服务器重新加载。如果您正在使用asp.net,请在page_load方法中添加您的默认文本。 :)