Проблема с innerHTML
Брр, подскажите пожалуйста)
Есть у меня страница, test.php предположим. И в ней форма: <form onsubmit="problem()" method="post" action=""> <table> <tr> <td colspan="2"><p><b>формат: гг-мм-дд чч:00</b></p></td><td></td> </tr> <tr> <td align="right">Дата:</td><td><input id="dates" name="dates" type="text" size="10" /></td> </tr> <tr> <td colspan="2"><input type="submit" value="Изменить задание" name="but" /></td> </tr> </table> </form> Ну и сам функция function problem() { var problems = new RegExp(/\d{2}-\d{2}-\d{2}\s\d{2}:\d{2}/); var pat_true = problems.test(document.getElementById('dates').value); if (pat_true) { document.getElementById('problem').innerHTML = 'Изменено'; } else { document.getElementById('problem').innerHTML = 'Проверьте дату'; } } Ну собственно говоря помогите заткнуть дыру в моих знаниях, как сделать так чтобы текст в span'e сохранился, как сообщение о неверно введённой дате. А не на секунду появлялся и пропадал(обновляется страница или что)? Ей богу не ругайтесь) |
По тесту установить кук, указываюший на неверный формат, если дата верна - предыдущий кук, если есть, - удаляем
При входе на страницу - проверять наличие кука |
:) То же самое можно сделать и с помощью LocalStorage
|
Я так понимаю что если дата неправильная, то форму отсылать не нужно? Тогда так:
1) в атрибуте формы пиши onsubmit="return problem()" 2) в коде пиши if (pat_true) { document.getElementById('problem').innerHTML = 'Изменено'; return true; } else { document.getElementById('problem').innerHTML = 'Проверьте дату'; return false; } И кстати, не нужно писать new RegExp(/тут_регулярка/) - это бессмысленно. Ты либо пиши new RegExp("тут_регулярка") либо просто /тут_регулярка/ (в первом случае обратные слэши нужно будет удваивать). |
Спасибо всем)
Особенно danik.js Заодно решил проблему с тем что при ошибке не нужно отправлять форму) Не ожидал таких быстрых ответов) |
document.getElementById('problem').innerHTML = pat_true ? 'Изменено' : 'Проверьте дату'; return !!pat_true; |
Думаю нет смысла создавать отдельную тему, хотя я не знаю к этому ли разделу относится такой вопрос.
Вот же js) Теперь встал вопрос, как мне по условию в js, аккуратно выполнить php insert допустим. Тоесть if (pat_true) { "как тут выполнить php если if (pat_true) истинно" return true; } Извините за путанность. |
php нативно не поддерживается браузерами. Но если очень хочется то вот: http://phpjs.hertzen.com
|
Часовой пояс GMT +3, время: 18:54. |