Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Использование одной функции для элементов с разными ID (https://javascript.ru/forum/misc/5031-ispolzovanie-odnojj-funkcii-dlya-ehlementov-s-raznymi-id.html)

Ferroks 09.09.2009 20:05

Использование одной функции для элементов с разными ID
 
Код:

<html>
<SCRIPT Language="JavaScript">
Itog();
    function Itog()
{
    name3.value = name1.value*name2.value;
}
</SCRIPT>
<table>
<tr>
<td>Строка 1</td>
<td><input onkeyup="Itog()" id="name1" type="text" value=""></td>
<td><input onkeyup="Itog()" id="name2" type="text" value=""></td>
<td><input id="name3" type="text" value="" disabled></td>
</tr>
<tr>
<td>Строка 2</td>
<td><input id="name4" type="text" value=""></td>
<td><input id="name5" type="text" value=""></td>
<td><input id="name6" type="text" value=""></td>
</tr>
<tr>
<td>Строка 3</td>
<td><input id="name7" type="text" value=""></td>
<td><input id="name8" type="text" value=""></td>
<td><input id="name9" type="text" value=""></td>
</tr>
</table>
</html>

подскажите как можно использовать одну функцию Itog() для id=name4, name5 и т.д.

Riim 09.09.2009 20:07

onkeyup="Itog(this)"

function Itog(elem)
{
elem.value = ....

Ferroks 09.09.2009 20:22

я сделал так
Код:

Itog(this);
    function Itog(elem)
{
    elem.value = elem.value*elem.value;
}
</SCRIPT>
<table>
<tr>
<td>Строка 1</td>
<td><input onkeyup="Itog(this)" id="name1" type="text" value=""></td>
<td><input onkeyup="Itog(this)" id="name2" type="text" value=""></td>

он мне умножает число которое я ввожу само на себя и результат выдает в этоже поле.
а мне надо чтоб name1*name2 внести в name3
name4*name5 результат внести в name6

Riim 09.09.2009 20:30

Делай, в чем проблема, все необходимые знания для реализации у тебя есть.

Ferroks 09.09.2009 21:07

совсем запутался, голова кругом.

объясните пожалуйста как работает этаконструкция

Код:

onkeyup="Itog(this)"

function Itog(elem)
{
elem.value = ....

onkeyup="Itog(this) - это запустится функция на любом элементе, у которого будет указано событие

function Itog(elem) - например если я ввел цифру в поле name1, то для поля name1 выполнится выражение name1.value= ...

так?

Ferroks 10.09.2009 09:20

дядиньки, помогите.

совсем запутался.

Riim 10.09.2009 10:01

Цитата:

Сообщение от Ferroks
так?

да.

Ferroks 10.09.2009 10:06

а как сделать чтоб когда я ввел цифру в поле name1 умножилось на поле name2 и результат вывелся в поле name3

Ferroks 10.09.2009 16:03

попробывал сделать так

Код:

<tr>
<td>Строка 1</td>
<td><input onkeyup="Itog(this)" id="1" type="text" value=""></td>
<td><input onkeyup="Itog(this)" id="2" type="text" value=""></td>
<td><input id="3" type="text" value="" disabled></td>
</tr>

Код:

function Itog(elem)
{
   
        a = elem.id;
        b = parseFloat(a)+1;
        b = b.toString();
        //c = a.value*b.value;
        aa = document.getElementById(a).value;
        bb = document.getElementById(b).value;
        //document.getElementById(c).value = aa*bb;
        //ccc = ;
        alert(parseFloat(aa)*parseFloat(bb));
       
}

но правильно срабатывает только когда ввожу число в первую ячейку, если ввожу во вторую, то пробует перемножить второе число и ячеку в которую нужно вывести результат

Ferroks 11.09.2009 08:35

ап


Часовой пояс GMT +3, время: 20:06.