Я оформлен в рупор, основанный на AJAX.http://businessgame.be/shoutbox.php
Сценарий отлично работает в Google Chrome, но другие браузеры работают не так, как я ожидаю.
Чтобы выкрикнуть новое сообщение, существует форма, которой принадлежит поле ввода текста.,При нажатии клавиши ввода форма отправляется, поэтому я пропустил кнопку отправки, поскольку достаточно нажать клавишу ввода.
<form method="POST" action="" onsubmit="javascript: return shout();" enctype="multipart/form-data">
<input type="text" style="width: 100%;" name="txtShout" id="txtShout" maxlength="600" autocomplete="off" title="Shout!" placeholder="Shout!">
</form>
Функция крика выглядит следующим образом:
function shout() {
alert("test");
// Post shout and clear textField
if(getLength("txtShout")) {
AjaxUpdate("./includes/shout.php?message=" + getItemValue("txtShout"), refreshShoutBox);
setItemValue("txtShout", "");
}
// Stop submit
return false;
}
Обычно,скрипт должен вызывать функцию крика, AJAX отправит запрос на добавление крика, а затем вернет false, чтобы форма не отправлялась.
Но во всех браузерах, кроме Google Chrome, форма все равно отправляется.Я вставил в функцию alert (), чтобы проверить, была ли она вызвана или ошибка кодирования, но предупреждение не отображается.