Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 20.07.2012, 01:14
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от Demath
ак заменить самую первую букву в <input type=text> на заглавную сразу после ввода пользователем?
Demath,
Гы поправил - зато нашел крупный недочет в своей методе (нет замены при заглавно-незаглавных буквах в запрещенных
Ответить с цитированием
  #12 (permalink)  
Старый 20.07.2012, 01:38
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

Сообщение от Deff Посмотреть сообщение
При копипасте вставьте два идентичных слова запрещенных - они не будут преобразованы - только первое
Вставил два подряд идентичных стоп-слова: помогите, помогите. Также вставлял и без запятых, и слитно.
Все преобразовывается (удаляется).
Ответить с цитированием
  #13 (permalink)  
Старый 20.07.2012, 11:28
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Demath,
Выложите примеры тестовых слов со спецсимволами
Ответить с цитированием
  #14 (permalink)  
Старый 24.07.2012, 12:43
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

Я имел ввиду, чтобы нельзя было чередовать русские и латинские буквы (и с цифрами смеси), например, смесь

"пoмoгитe" (латинские выделены жирным)

Можно ли задать условие, чтобы сразу после русской буквы нельзя было ввести ничего, кроме тоже русской буквы, пробела и знака препинания?
Ответить с цитированием
  #15 (permalink)  
Старый 24.07.2012, 12:54
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Demath,
Работа - не благодарная - обычно регеспы цензуры - задаются в Админке,
Извернуться с использованием - можно - как угодно, К примеру обрамить букву в тег черного цвета
Обычно цензура лишь уведомляет неопытного пользователя, а не спецом задавшегося целью обойти её, против лома есть только модерирование и бан
Ответить с цитированием
  #16 (permalink)  
Старый 24.07.2012, 16:10
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

Сообщение от Deff
Работа - не благодарная - обычно регеспы цензуры - задаются в Админке,
Извернуться с использованием - можно - как угодно, К примеру обрамить букву в тег черного цвета
Спасибо за наводку.

Сообщение от Deff
Обычно цензура лишь уведомляет неопытного пользователя, а не спецом задавшегося целью обойти её, против лома есть только модерирование и бан
Понятно, что этот скрипт не панацея, но, я думаю, что он поможет уменьшить количество некорректных заголовков процентов на 80.
Ответить с цитированием
  #17 (permalink)  
Старый 26.07.2012, 10:47
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

Сообщение от Demath
- удалении точки, если она является самым последним символом в строке?
С этим разобрался, вроде бы (?)

<!DOCTYPE html>
<html>
<head>
<meta http-equiv=content-type content="text/html; charset=utf-8">
<script type="text/javascript">
function deleteEndPoint(obj)
{   obj=document.getElementById('abcd');
     var str=obj.value;
     if(str.slice(-1)=='.') {obj.value=str.slice(0, -1);
          alert('Уважаемый пользователь!\n\nТочка в конце заголовка не ставится.')
         }
}
</script>
</head>
<body>
<input style="width: 400px;" id="abcd" onblur="deleteEndPoint(this)">
</body>
</html>

_________________________________________

Как получить следующий символ сразу после заданного?

Нужно, чтобы сразу после русской буквы нельзя было ввести ничего, кроме тоже русской буквы или пробела, или знака препинания.

Последний раз редактировалось Demath, 27.07.2012 в 11:32. Причина: Исправил кодировку
Ответить с цитированием
  #18 (permalink)  
Старый 26.07.2012, 11:50
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Demath
Нужно, чтобы сразу после русской буквы нельзя было ввести ничего, кроме тоже русской буквы или пробела, или знака препинания.
<input id="inp" type="text" value="Test   text   now прИвет мир" style="width: 100%;" />
<script>
    document.getElementById('inp').onkeypress = function( e ) {
        e = e || window.event;
        var self = e.target || e.srcElement,
            caretPos = 0;

        if ( e.which == null ) {
            e.which = e.charCode != null ? e.charCode : e.keyCode;
        }

        if ( e.which == 32 || e.which == 9 || e.which == 8 || e.which == 0 &&
                /[\x21\x22\x23\x24\x25\x26\x27\x28\x2E]/.test( String.fromCharCode( e.keyCode ) ) ) {
            return;
        }

        if ( document.selection ) {
            self.focus();
            var sel = document.selection.createRange();
            sel.moveStart( 'character', -self.value.length );
            caretPos = sel.text.length;
        } else if ( self.selectionStart || self.selectionStart == '0' ) {
            caretPos = self.selectionStart;
        }

        var wordStart = self.value.lastIndexOf( " ", caretPos - 1 ) + 1,
            wordEnd = self.value.indexOf( " ", caretPos );

        wordEnd = ( wordEnd == -1 ? self.value.length : wordEnd ) - wordStart;

        // это наше слово над которым находится курсор
        var word = self.value.substr( wordStart, wordEnd ).replace( /^\s+|\s+$/g, '');

        var isLatin = !/[а-яё]/i.test( String.fromCharCode( e.keyCode ) );
        var isSymbol = !isLatin || /[a-zA-Z]/.test( String.fromCharCode( e.keyCode ) );

        return !word || !isSymbol || ( /[а-яё]+/i.test( word ) ? !isLatin : isLatin );
    }
</script>
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine

Последний раз редактировалось devote, 26.07.2012 в 12:08.
Ответить с цитированием
  #19 (permalink)  
Старый 26.07.2012, 12:01
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

devote, спасибо!
Ответить с цитированием
  #20 (permalink)  
Старый 26.07.2012, 12:02
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

исправил ошибки
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрипт для вывода текста поверх картинки sergeus Работа 1 19.02.2012 06:01
Требуется написать скрипт защиты от удаления товара из корзины для Virtuemart umitru Работа 19 01.02.2012 14:30
Как превратить скрипт в плагин для jquery? lilumi jQuery 8 16.09.2011 17:39
Подскажите скрипт для загрузки фото на сервер Mapshal Общие вопросы Javascript 0 13.08.2011 17:49
Скрипт для плагина к Download Master ponand Общие вопросы Javascript 21 05.01.2009 22:12