|
|
|
| Помогите пожалуйста, есть поле, в которое разрешается вводить только русские символы, если вводятся не русские выдается сообщение "Введите имя на русском языке". Работает он в IE, Chrome, Safary, а вот в FireFox(5) не работает.
1) Подскажите пожалуйста в чем причина и как ее решить.
2) /^[а-яА-Я]/i - регулярка позволяющая вводить только русские символы, но она пропускает и цыфры если их вводить после русских букв, помогите пожалуйста исправить этот недочет.
Заранее благодарен!
<tr><td><div class="type1">
<input name="email_" onkeyup="email(this)" id="email_" size="31"/>
<div id="pa"></div>
</div> </td><td>E-mail</td></tr>
|
var test = false;
function namep(elementValue){
var emailPattern = /^[а-яА-Я]/i;
if (emailPattern.test(elementValue.value))
{
pb.innerHTML = "";
test = true;
}
else
{
pb.innerHTML = "Введите имя на русском языке";
test = false;
}
}
|
| |
|
|
|
|
|
|
|
для: shkarbatov
(28.07.2011 в 19:22)
| | >Кроссбраузерность в регулярках
как познаете её, научите и меня
var emailPattern = /^[а-яА-Я]/i;
| проверяет только первый символ
var emailPattern = /^[а-яА-Я]+$/;
| проверяет все символы
может ещё понадобится модификатор g, а может и нет, модификатор i в данном случае наверно не нужен | |
|
|
|
|
|
|
|
для: f111
(28.07.2011 в 22:50)
| | Спасибо, со вторым вопросом я разобрался, а вот с первым, увы =( | |
|
|
|
|
|
|
|
для: shkarbatov
(29.07.2011 в 00:28)
| | а в чём заключается первый? ещё раз и с примерами)) | |
|
|
|
|
|
|
|
для: f111
(29.07.2011 в 00:42)
| | Есть поле input, если в него вводятся не русские символы, или цифры, тогда выводится "Введите имя на русском языке", иначе надпись просто обнуляется pb.innerHTML = ""
Проверка работает и выводятся сообщения. Выполняется во всех браузер кроме FireFox. Вот почему-то там оно и не работает. Вот пример: http://shkarbatov.com/artpack/
var test = false;
function namep(elementValue){
var emailPattern = /^[а-яА-ЯёЁ]+$/;
if (emailPattern.test(elementValue.value))
{
pb.innerHTML = "";
test = true;
}
else
{
pb.innerHTML = "Введите имя на русском языке";
test = false;
}
}
|
<tr><td><div class="type1">
<input name="name_" onkeyup="namep(this)" id="name_" size="31"/>
<div id="pb"></div>
</div></td><td>  Имя</td></tr>
|
| |
|
|
|
|
|
|
|
для: shkarbatov
(29.07.2011 в 01:16)
| | а у меня всё работает, и как раз в FF 5.0
<html>
<head>
<title></title>
<script type="text/javascript">
var test = false;
function namep(elementValue){
var emailPattern = /^[а-яА-ЯёЁ]+$/;
var pb=document.getElementById('pb');
if (emailPattern.test(elementValue.value))
{
pb.innerHTML = "всё кульно!";
test = true;
}
else
{
pb.innerHTML = "Введите имя на русском языке";
test = false;
}
}
</script>
</head>
<body>
<input name="name_" onkeyup="namep(this)" id="name_" size="31"/>
<div id="pb">?(уапрос)</div>
</body>
</html>
|
на вашей странице у меня не то что набор символов, но даже имя "Иван" не пропускает, видимо скрипт догадывается что я вру)) | |
|
|
|
|
|
|
|
для: f111
(29.07.2011 в 01:34)
| | Точно, я просто затупил с var pb=document.getElementById('pb');
Я написал var pd=document.getElementById('pb'); а юзал pb.innerHTML = "всё кульно!";
Спасибо большое! | |
|
|
|
|
|
|
|
для: shkarbatov
(29.07.2011 в 01:45)
| | крутая у вас регулярка для проверки емайлов
var emailPattern = /^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i;
| (в первом "подвыражении" вы пропускаете пробелы ("[\w-\s]+") дальше читать не стал, хотя с радостью посмотрел на то что можно подставить под этот шаблон)
я как-то пользовался такой
|[\w\.-]+@\w+\.[a-z]{2,4}|i
| самопальной (что не значит правильной).
какие символы ваша должна пропускать? | |
|
|
|
|
|
|
|
для: f111
(29.07.2011 в 01:53)
| | Человека =) | |
|
|
|
|
|
|
|
для: shkarbatov
(29.07.2011 в 02:04)
| | ответ я не понял, ну и ладно)) | |
|
|
|
|
|
|
|
для: shkarbatov
(28.07.2011 в 19:22)
| | лучше кроссбраузерный пхп использовать) | |
|
|
|
|
|
|
|
для: sl1p
(29.07.2011 в 16:18)
| | гениально! | |
|
|
|