Сделать можно все, но когда все оптимизируешь для поисковых, то сайт уже не для людей и не совсем удобный, так что тут надо выбирать ) сайт для людей или для поисковых систем.
Не совсем понял что это все дает, куча дублей, все эти дубли указывают на один сайт и таким способом основной сайт вылезает в топ, я это так понял.
вот хорошее решение, то что я хотел что бы через див выводилась валидация я сделал, делюсь !
<script type='text/javascript'>
function checkForm(obj, elems) {
var element, pattern;
for (var i = 0; i < obj.elements.length; i++) {// пробегаемся по всем элементам формы
element = obj.elements; // Проверяем только нужные поля if (elems != undefined) if (elems.join().indexOf(element.type) < 0) continue; // И только если есть чего говорить юзеру в случае ошибки if (!element.getAttribute("check_message")) continue; if (pattern = element.getAttribute("check_pattern")) { // если задан рег pattern = new RegExp(pattern, "g"); if (!pattern.test(element.value)) { document.getElementById('validationka').style.display = "block"document.getElementById('validationka').innerHTML =element.getAttribute("check_message"); element.focus();return false; } } else if(/^\s*$/.test(element.value)) {// иначе просто проверка что поле не пустое document.getElementById('validationka').style.display = "block"document.getElementById('validationka').innerHTML = element.getAttribute("check_message"); element.focus(); return false; } } return true; } </script>
да я ставил что то готовое, там все равно нужно переписывать под свои нужды, сколько денег возьмете что бы нормальный код написать?
по первой ссылке, там форма, там нет js.
if (!pattern.test(element.value)) element.classList.add('invalid');
if (!pattern.test(element.value)) { element.classList.add('invalid'); element.title=check_message; }
var err_cont = document.getElementById('err-'+element.name); err_cont.textContent=error_message;
код который вы написали добавить к тому коду? или заменить какие тополя, я вот не понимаю и спрашиваю ! или удалить весь, но оставить то что вы предложили из кусков кода собрать один.
Попробовал я этот метод.
пример для импута
<input type="text" name="prname" maxlength="80" id="textarea" autofocus check_message="Введите заголовок, должен быть не больше 80 букв" />
так вот после проверки, браузер фаерфокс, показывает окно с ошибками ! а так же предлагает закрыть эти окна если поставить галочку ! если поставить ее то и окна с ошибками не будет видно ! это же минус большой этого метода.
У меня на одном input и на двух textarea стоит этот метод, так вот если забыл ввести заголовок, то всплывает окно, я заполняю, пытаюсь дальше добавить новость, всплывает второе окно, введите короткий текст, опять нажал добавить, всплывает третье окно, заполните полный текст, в третьем окно и появилась поставьте галочку! если ее поставить, и не заполнить поле, а нажать добавить, то новость добавится без полного текста.
Да и окно не совсем красивое, стандартное от брайзера.
Выходит, что эта валидация не совсем хорошая.
element.getAttribute() те задачи что я хочу реализовать можно через данную функцию реализовать?
атрибуты pattern с required - знаю, читал уже, а толку ! если брайзер старый ! то оно и работать не будет.
поддержка брайзеров ( Pattern Support Firefox 4+ & Chrome 5+ & Opera 9.6+ & MSIE 10+ )
Что я хочу реализовать через js
Проверка на введение трех полей.
Начало формы:
я форме присвоил ид id="addnews"
Див для вывода ошибок: ( <div id="resultred"></div> )
Код js - в коде ноль, но пытаюсь по другим примерам что то сделать.
пока так сделал, дальше пока не понял сути.
понял что по нажатию на кнопку добавить новость, срабатывает js который проверяет всю форму, и после того если все хорошо, то он добавляет новость, а если есть ошибка то будет выводить ошибку.
что я хочу реализовать через js, нужно что бы была проверка что данные поля нужно заполнить, пустыми их оставлять нельзя, поля обязательные для заполнения ( prname, shortdescription, description )
У поля ( prname ), хочу сделать что бы нельзя было больше 80 символов писать, и меньше 10, то есть если меньше 10 или больше 80, то он должен будет выдавать ошибку с текстом, слишком мало символов в заголовке что то такое.
Для поля ( shortdescription ), хочу реализовать что бы меньше 50 символов нельзя было писать и больше 220, и если я заполнил меньше 50, то что бы скрипт валидации выдавал что слишком маленький текст, ну и если больше 220.
Для поля ( description ), поле обязательно для заполнения, если оставили пустым, то что бы писалось такое то поле не должно быть пустым.
Подскажите как дальше скрипт дописать, приведите пожалуйста пример.
Спасибо всем, да я так уже и понял что надо на js валидацию сделать, что бы не было перезагрузки страницы.