Поблема с Firefox"ом
Есть пример работающий в IE но неработающий в Firefox.
Проблема в передачи параметров функции. В FireFox работает когда указываеш this.value вместо str1.value. Как можно решить данную проблему? index.htm <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Test"</title> <script src="demo.js" type="text/javascript" defer="defer"></script> </head> Test1: <input size="25" type="text" name="str1" onKeyUp="loadResult(str1.value, str2.value);"/> <br> Test2: <input size="25" type="text" name="str2" onKeyUp="loadResult(str1.value, str2.value);"/> </body> </html> demo.js function loadResult(s1, s2) { alert("Test1: " + s1 + " Test2: " + s2); } Заранее благодарен!!! |
проблема в данном случае не в том, что этот коде не работает в мозилле, а втом, что он работает в осле
вкратце осел выносит в глобальную область видимоти ХТМЛ-теги согласно их имени. если не ошибаюсь опера еще этим страдает. а в мозилле этого нет, и незачем. вам же советую переписать код под использование ID-шников и document.getElementById() соответственно тогда он будет работать везде |
Указание элементу id в нормальных браузерах не создает переменную в JS.
|
Цитата:
а выносить заранее в глобальную область видимости сразу кучу элементов, нету нужды, и в определенных случаях даже вредно, ибо засирает глобальную область видимости. а потом выплывают глюки, что нужно прочитать весь кусок ХТМЛ, прежде разберешся, кто там пересекается по имени с твоими переменными |
Спасибо Всем за ответ!!!
Решилось изменением str1.value на document.mainForm.str1.value и str2.value на document.mainForm.str2.value |
Часовой пояс GMT +3, время: 04:26. |