|
|
|
| Нужно сдлеать так, что бы когда в поле <input type="text"> менялось количество символов вызывалась функция. Как это сделать?
Спасибо. | |
|
|
|
|
|
|
|
для: -Deadly-
(02.03.2008 в 17:07)
| | Может onkeydown="f()" | |
|
|
|
|
|
|
|
для: вялый
(02.03.2008 в 17:23)
| | onchange="fun()" | |
|
|
|
|
|
|
|
для: 3ABAPKA
(02.03.2008 в 17:39)
| | onchange это когда фокус уходит с элемента | |
|
|
|
|
|
|
|
для: -Deadly-
(02.03.2008 в 17:07)
| |
var ns6=document.getElementById&&!document.all;
function restrictinput(maxlength,e,placeholder){
if(window.event&&event.srcElement.value.length>=maxlength){
return false;
}else{
if(e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){
var pressedkey=/[a-zA-Z0-9\.\,\/]/;
if(pressedkey.test(String.fromCharCode(e.which))){
e.stopPropagation();
}
}
}
}
function countlimit(maxlength,e,placeholder){
//document.getElementById('edit_o_sebe').style.display = 'block';
var theform=eval(placeholder);
var lengthleft=maxlength-theform.value.length;
var placeholderobj=document.all? document.all[placeholder] : document.getElementById(placeholder);
if(window.event||e.target&&e.target==eval(placeholder)){
if(lengthleft<0){
lengthleft = 0;
theform.value=theform.value.substring(0,maxlength);
}
placeholderobj.innerHTML='Осталось <b>'+lengthleft+'</b>';
}
}
function displaylimit(thename, theid, thelimit){
//doBlock('edit_o_sebe');
//document.getElementById('edit_o_sebe').style.display = 'block';
//document.userinfo.edit_o_sebe.style.display = 'block';
var theform=theid!=""? document.getElementById(theid) : thename;
var limit_text='<span id="'+theform.toString()+'">Не больше <b>'+thelimit+'</b> символов</span>';
if(document.all||ns6)
document.write(limit_text);
if(document.all){
eval(theform).onkeypress=function(){
return restrictinput(thelimit,event,theform);
}
eval(theform).onkeyup=function(){
countlimit(thelimit,event,theform);
}
}
else if(ns6){
document.body.addEventListener('keypress', function(event){ restrictinput(thelimit,event,theform) }, true);
document.body.addEventListener('keyup', function(event){ countlimit(thelimit,event,theform) }, true);
}
}
|
ниже необходимого поля прописываешь
<script type="text/javascript">displaylimit("document.имя_формы.имя_поля","", "сколько_символов_максимум_одной_цыфрай")</script>
|
Там где пустые ковычки, по идее можно прописывать id, как альтернативный выриант, но мне не понравилось. | |
|
|
|
|
|
|
|
для: mikha
(02.03.2008 в 18:40)
| | упс.. прошу прощения, возможно вам не это надо..
onkeypress лыба)))
упс.. забыл совсем, функции не мои, чьи не помню. прошу прощения перед афтором..
их необходимо бы дополнить, если не забуду, вернусь к этой теме.
Есть некоторые недостатки, если поле полностью заполненно и текст выделен, то печатаешь символ, текст не пропадает пока не удалишь всё. В принципе не очень неудобный недостаток. на днях устраню, если не забуду, обновлю. | |
|
|
|