搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

了解更多

the value present in the element getting shifted from one input to another in firefox 20.0.1 if the label was added as innerhtml onload

more options

If the below code was opened in firefox 20.0.1 and type some value in the text box. once after typing the value hit the browser refresh button. the typed value getting shifted from one input elelment to another.

<html>
<head>
<script>
function searchPageLoader(){
document.getElementById('searchareaa').innerHTML='<label ></label>';
}
</script>
</head>
<body onload="searchPageLoader()">

<div id="searchareaa">
 </div>

                        <input type="text" id="pageCount" value="5"/>
                        <input type="text" id="startlimit" value="11"/>
                        <input type="text" id="endlimit" value="5"/>
</body>
</html>

It is happening only in firefox and and only if we do the innerhtml .


http://stackoverflow.com/questions/16548778/firefox-simple-form-element-with-inner-html-bug

If the below code was opened in firefox 20.0.1 and type some value in the text box. once after typing the value hit the browser refresh button. the typed value getting shifted from one input elelment to another. <pre><nowiki><html> <head> <script> function searchPageLoader(){ document.getElementById('searchareaa').innerHTML='<label ></label>'; } </script> </head> <body onload="searchPageLoader()"> <div id="searchareaa"> </div> <input type="text" id="pageCount" value="5"/> <input type="text" id="startlimit" value="11"/> <input type="text" id="endlimit" value="5"/> </body> </html></nowiki></pre> It is happening only in firefox and and only if we do the innerhtml . http://stackoverflow.com/questions/16548778/firefox-simple-form-element-with-inner-html-bug

由 cor-el 於 修改

所有回覆 (3)

more options

Would you mind installing Firefox 21 to see whether the problem still exists in today's release?

https://www.mozilla.org/firefox/fx/#desktop

more options

It seems that the missing <label> element causes Firefox to restore the non-default input value to the wrong input. As a "workaround", use <form> tags around your form elements. Then the values do not migrate on reload.

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function searchPageLoader(){
  document.body.style.backgroundColor = "#ffc";
  document.getElementById('searchareaa').innerHTML='<label></label>';
}
</script>
</head>
<body onload="window.setTimeout('searchPageLoader();', 500);">
<form><!-- To replicate the problem, remove this line -->
<div id="searchareaa"></div>
<input type="text" id="pageCount" value="5">
<input type="text" id="startlimit" value="11">
<input type="text" id="endlimit" value="5">
</form>
</body>
</html>

Note: This was in Firefox 20.0.1.

由 jscher2000 - Support Volunteer 於 修改

more options

After further investigation, you might need to assign a name attribute to each form element for Firefox to associate the attributes with the correct fields. See: Random disabled Firefox 23.0.1 - mozillaZine Forums.