powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Почему не работает onblur?
8 сообщений из 8, страница 1 из 1
Почему не работает onblur?
    #39427165
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый ночи!
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<?php
$result=mysql_query('SELECT names, sena FROM aklad order by nom;');
?>
<form  method="POST">
<table>
<?php while ($row=mysql_fetch_array($result)):?>
<tr>
<td><input type="text" name="names[]" value="<?php echo $row[0];?>">
<td><input type="number" name="sena[]" onblur="(summa.value = sena.value * 26)" >
<td><input type="number" name="summa[]">
</tr>
<?php endwhile;?>
</table>


Скажите пожалуйста, почему не работает onblur?
Спасибо!
...
Рейтинг: 0 / 0
Почему не работает onblur?
    #39427194
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Abisma2008,
лучше показывать код не из ide, а уже из браузера
и что значит не работает?
F12 умеешь пол зоваться?
...
Рейтинг: 0 / 0
Почему не работает onblur?
    #39427195
Фотография бухалтер фантоцци
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому, что
Код: php
1.
onblur="(summa.value = sena.value * 26)"


интерпретируется в JavaScript-код обработчика события blur :
Код: javascript
1.
function(e) { summa.value = sena.value * 26 }

где summa и sena - это переменные (ссылки на объекты), которые нужно как-то найти, иначе будет ошибка (вы в консоль ошибок смотрели?).
...
Рейтинг: 0 / 0
Почему не работает onblur?
    #39427196
Фотография бухалтер фантоцци
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ещё точнее, обработчик будет создан аналогично вызову конструктора
Код: javascript
1.
new Function("event","(summa.value = sena.value * 26)");


Правильней написать так:
Код: html
1.
onblur="myFunction(event)"

чтобы обеспечить передачу объекта события в вызываемую функцию myFunction
Объект события event очень желателен и даже необходим, чтобы управлять событием (отменять действие по-умолчанию, "всплытие" и т.д.)
...
Рейтинг: 0 / 0
Почему не работает onblur?
    #39427197
Фотография бухалтер фантоцци
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ещё точнее :)
this будет указывать в данном случае на текущее поле ввода input , в остальном аналогично конструктору Function()
Ну и некоторые действия пользователя нельзя отменить, например, потеря фокуса сообщается постфактум...

Как один из вариантов...
Код: html
1.
2.
3.
4.
...
<td><input type="number" name="sena[]" onchange="document.getElementById('mySum').value = (parseFloat(this.value) * 26).toFixed(2)" /></td>
<td><input id="mySum" type="number" name="summa[]"></td>
...

В данном случае лучше использовать onchange , потому что пользователь может нажать Enter
...
Рейтинг: 0 / 0
Почему не работает onblur?
    #39427213
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
бухалтер фантоцци,

Спасибо за ответ!
Я взял ваш код. Код немножко неправильно работает:
mamessenasummaСаша178Ваня2Лена3
Всегда показывает сумму на первой строке.
В данном примере я на против "Лена" поставил "3" результат показывает на против"Саша"!
Вторая проблема:
Если я добавлю еще один столбец "kolvo" и вместо "26" напишу kolvo.value результат не показывает.
Надеюсь Вы меня поняли)
Спасибо!
...
Рейтинг: 0 / 0
Почему не работает onblur?
    #39427230
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Abisma2008,
бухгалтер всё рассказал, нужно и самому думать.
...
Рейтинг: 0 / 0
Почему не работает onblur?
    #39427237
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вадя,

Решил вторую проблему:
Код: html
1.
2.
3.
4.
<td><input type="number" id="mySena" name="sena[]" 
onchange="document.getElementById('mySum').value = 
(parseFloat(onchange="document.getElementById('mySena').value) * 
onchange="document.getElementById('myKolvo').value).toFixed(2)" /></td>


Помогите чайнику пожалуйста с первой преблемой!
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Почему не работает onblur?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]