Не работает "return false" если обращаюсь к нему из присоединенного файла.
Есть форма, через которую я ввожу данные (работа с БД).
Всё работает. Для того, чтобы страница не перезагружалась, добавил в html (пока набрасывал пример)
$("#myForm").submit(function() { return false;});
Работает. Как только я выношу этот Javascript во внешний файл js (и все остальные js файлs обмена с БД) - всё работает, НО не работает указанная выше строчка, т.е. выбрасывает меня на страницу моего скрипта php. Оставлять код в html-е не комильфо. В чём может быть дело? |
ice99,
Заключить строку в файле в
$(function(){
}
Файл грузить после загрузки jQuery |
Цитата:
Странно. Конструкция
$(function(){
$("#myForm").submit(function() { return false;});
}
отказывается работать, даже будучи интегрированной в html. Может дело в синтаксисе? |
ice99,
может jQuery ещё не подгружена? |
Цитата:
Вот весь мой код. Всё работает внутри страницы, а если выношу в отдельный файл - не работает отмеченная строка.
<script>
function GetValue() {
$.ajax({
url: 'get_temperature.php',
dataType: 'json'
}).done(
function (data) {
document.getElementById("anchor_left_1_1_hotspot").innerHTML = "открыт на "+data+"%";
});
}
$("#sub").click(function(){ $.post($("#myForm").attr("action"), $("#myForm :input").serializeArray(), function(info){$("#result").html(info);}); GetValue(); });
$("#myForm").submit(function() {return false;}); // ВОТ ЭТА СТРОКА НЕ РАБОТАЕТ, ЕСЛИ ВЫНЕСТИ ЕЁ В ОТДЕЛЬНЫЙ ФАЙЛ
function clearInput() { $("#myForm :input").each( function() { $(this).val(''); });}
</script>
|
ice99,
попробуйте через event отменить
$("#myForm").submit(function(event) {event.preventDefault()});
|
Разобрался.
Указанная строка работает (из присоединенного файла)только если завернуть её в
$(document).ready(function() {
}
Может это и основы, но я как новичок не сразу дошел. |
Цитата:
$(document).ready(function() { } это тоже что $(function(){ |
Цитата:
$(function(){$("#myForm").submit(function() { return false; });});
Работает. Наверное запутался в секвенции скобок. |
| Часовой пояс GMT +3, время: 02:14. |