Помощь по JavaScript
1594 повідомлення
#15 років тому
На странице выводится "что-то". Рядом с каждым "что-то" есть чекбокс.Наверху есть чекбокс "Выделить всё" а рядом ссылочка - "Удалить выбранное".
То есть я так понимаю по нажатию на "удалить выбранное" срабатывает document.getElementById('form'

Вопрос: Как реализовать OnClick чекбокса "Выделить всё", чтобы надпись менялась на "Сбросить всё" если он активен, и соответстственно при снятии чекбокса - всё выделенное так же снималось...
Кривенько объяснил, но я думаю поймут.
Помогите пожалуйста!
16382 повідомлення
#15 років тому
Сделай чекбоксам id вида asdНОМЕР и потом в цикле перебирая номер от нуля до их количества проставляй. дальше сам должен понять.
279 повідомлень
1594 повідомлення
#15 років тому
Ладно, с этим разобрался. Заказчику надо, чтобы при регистрации при вводе пароля выводилась его сложность.
Сделал следующее:
1. Есть следующий элемент в форме:
<input name="pass1" id="pass1" type="password" OnKeyUp="CheckPass();"/>
2. Чуть ранее в коде есть следующий фрагмент:
<script type="text/javascript"><!--
function CheckPass()
{
alert('012334'

var pass = document.getElementById('pass1'

var level = 0;
if((pass.length < 8) && (pass == pass.toLowerCase()))
{
level = 0;
}
if((pass.length > 8) && (pass != pass.toLowerCase()))
{
level = 1;
}
if((pass.length > 12) && (pass != pass.toLowerCase()) and (isNaN(pass)))
{
level = 2;
}
var level1 = document.getElementById('level'

var level2 = document.getElementById('level1'

level2.value = level;
if(level == 0) {
level1.innerHTML = 'Низкая';
level1.style.color = 'red';
}
if(level == 1) {
level1.innerHTML = 'Средняя';
level1.style.color = 'yellow';
}
if(level == 2) {
level1.innerHTML = 'Высокая';
level1.style.color = 'green';
}
}
--></script>
alert() вставлен просто для проверки. Набираю в поле pass1 чуть ли не поэму, но алерт так и не вызывается. В чем может быть причина?
Консоль ошибок Opera сказала:
message: Statement on line 1: Undefined variable: CheckPass
Чтобы это значило?..
279 повідомлень
#15 років тому
Message: Statement on line 1: Undefined variable: CheckPass похоже на какую-то синтаксическую ошибку на первый взгляд,типа где-то запятой не хватает,итдя бы функцию вешал на ончейндж,а не на онкейап...правда не знаю почему мне это кажется более логичным...наверно потому.что ваш скрипт будет срабатывать даже при нажатиях стрелочек,а если он чейндж,только при изменении текста,но я это не проверял.просто мысли в слух
Если дадите пример посмотреть онлайн,попробую помочь с ошибкрой конкретнее
279 повідомлень
#15 років тому
Вот,что выдал фаербагmissing ) after condition
if((pass.length > 12) && (pass != pass.toLowerCase()) and (isNaN(pass)))\n
собственно как я и думал синтаксическая ошибка,где-то в этой строке ошибка с открывающими\закрывающими скобками
ремонтировать не стал,думаю сами разберетесь
279 повідомлень
#15 років тому
Блин,любопытство взяло верх.исправил 74 строкуif((pass.length > 12) && (pass != pass.toLowerCase()) && (isNaN(pass)))
к стати попробовал ончейндж повесить,понял,что сказал полную фигню,оно вызывается когда текст введен и теряет фокус...так,что он кей прес или доун как вы сделал самый правильный вариант
279 повідомлень
#15 років тому
По идее во многих языках это одно и тоже,там описыватся and равно && и or равен || но символьный вариант вроде должен работать медленее,но почему ошибку вызвал,сам не знаю,видимо в яваскрипт использовать их нельзявот,что нашел по этому поводу
посилання
посилання
в пхп можно и так и так,в яваскрипте только не символьными... Мистика =)
1594 повідомлення
#15 років тому
_VersouL_, Вот и я о чем. Привык всегда писать and, поэтому не понял в чем проблема
1594 повідомлення
#15 років тому
И еще вопрос от человека, не понимающего логики любимого JSЕсть документик.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>!!!</title>
<base href="http://love.anexroid.ru/" />
<script type="text/javascript">
function send_form()
{
alert(document.getElementById('my_form'));
var forma = document.getElementById('my_form');
forma.submit();
}
</script>
</head>
<body>
<form action="script1.php" method="post" name="messageForm" id="messageForm">
<form action="script2.php" name="my_form" id="my_form" method="POST">
<input name="username" id="username" style="width:280px" />
<a href="javascript: send_form();">test</a>
</form>
</form>
</body>
</html>
При нажатии на ссылку alert выводит Цитата:
null
И, соответственно, submit не срабатывает. Почему так?