Firefox игнорирует переопределение JavaScript при отправке формы - PullRequest
2 голосов
/ 22 ноября 2011

У меня есть этот код

<html>
<head>
<script type="text/javascript" src="my-search.js"></script>
</head>
<body onLoad="my_Init();">
<div>
<form name="id_msearchform" onsubmit="my_EventHandler_Action(); return false;">
  <input type="text" name="id_searchphrase" value="example"></input>
  <br><br>
  <input type="submit" name="id_searchsubmit" value="Search"></input>
</form>
<br><br>
<div id="id_searchresults">No search done...</div>
</div>
</body>
</html>

Я не хочу, чтобы браузер запрашивал новый URL. Вот почему «onsubmit» имеет «return false;». Этот код работает в Internet Explorer, но Firefox генерирует новый запрос. Есть идеи, что я делаю не так?

FireBug меняется от нежелания подтверждать, что есть ссылка на Javascript, и от отображения файла Javascript без каких-либо ошибок ... Я обновлю это, когда у меня будет что добавить. Я попробую разные вещи, например попробуйте загрузить его в сеть и посмотреть, ведет ли себя FireFox по-разному, когда JS не работает на локальном диске.

Ответы [ 2 ]

1 голос
/ 22 ноября 2011

Вы уверены, что у вас нет ошибок?

Я пытаюсь с простым HTML:

<html>
<head>
<script type="text/javascript" src="my-search.js"></script>
</head>
<body onLoad="my_Init();">
<div>
<form name="id_msearchform" onsubmit="my_EventHandler_Action(); return false;">
  <input type="text" name="id_searchphrase" value="example"></input>
  <br><br>
  <input type="submit" name="id_searchsubmit" value="Search"></input>
</form>
<br><br>
<div id="id_searchresults">No search done...</div>
</div>
</body>
</html>

И простой javascript с именем my-search.js по тому же пути моего html со следующим кодом:

var my_Init = function(){
    alert('Hello Onload');
}
var my_EventHandler_Action = function(){
    alert('Hello OnSubmit');
}

И все отлично работает.

Можете ли вы показать живую демонстрацию (с Dropbox или чем-то еще)?

0 голосов
/ 22 ноября 2011

Вместо использования кнопки отправки, попробуйте использовать кнопку и связать с ней функцию javascript.

...