PDA

Показать полную графическую версию : [решено] JS. Как установить onblur из JS?


Sanchos
04-07-2010, 12:32
Ситуация такая:
Есть сайт на системе ucoz. К большому сожалению некоторые формы не поддерживают ручное редактирование кода. Например форма добавления материала. Но мне кровь из носу нужно добавить на одно поле функцию onblur. Думал можно как то из JS, но что то не выходит. Может есть какая то тонкость/хитрость?
Код нужного мне поля выводится движком и выглядит так:
<input type="text" class="manFlVers" size="20" id="ldF4" name="vers" maxlength="20" />

пробовал
var cdrVer = document.getElementById('ldF4');
cdrVer.onblur=...
не работает...
пробовал даже через outerHTML менять код, и тоже ноль результата.

Как быть?

Coutty
04-07-2010, 12:50
Попробуйте добавить обработчик событий через .addEventListener(). Примерно так это выглядит для события onKeyPress:
if (typeof window.document.addEventListener == 'function')
{
window.document.addEventListener('keypress',function(ev) {
if (ev.keyCode == 0)
userFunction(ev.which);
else
userFunction(ev.keyCode);
}, false);
}
else if (typeof window.event == 'object')
{
window.document.onkeypress = function() {
userFunction(window.event.keyCode);
}
}
Соответственно, вместо window.document.addEventListener вам нужно обратиться к своему объекту по номеру или как-то ещё: object.addEventListener.

Sanchos
04-07-2010, 13:16
Спасибо за ответ ))) Я только что решил задачу.
Толи в прошлый раз с запятыми были проблемы толи не там код поставил но сейчас всё работает:
<script type="text/javascript"> function cdrShowVerAlert (myStr){if(myStr=='15'||myStr=='X5'||myStr=='x5'){ здесь вывод информации пользователю }} </script>

Здесь форма добавления материала с нужным мне полем...

<script type="text/javascript">
var cdrVer = document.getElementById('ldF4');
cdrVer.onblur="cdrShowVerAlert(this.value)";
cdrVer.size = "3"
cdrVer.maxLength = "2";
</script>




© OSzone.net 2001-2012