Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Суммирование значений в текстовом поле.
Покинул форум
Сообщений всего: 43
Дата рег-ции: Нояб. 2011
Помог: 0 раз(а)
Есть динамическая форма вписанная в таблицу. В форме может быть от 20 до ~250 текстовых полей. Ввод данных разрешён только в поля находящиеся в первом столбце таблицы, у остальных атрибут ридонли.
При вводе числового значения в поле поля находящиеся с ним в одной строке заполняются вычисляемыми значениями. Это сделал сам.
Но как при изменении одного из полей в первом столбце, выводить в поля последней строки сумму полей по столбцам? Со строками всё просто, там всегда одинаковое количество полей, а в столбце то может быть разное количество. Помогите кто знает, пожалуйста...
filkeith
Отправлено: 07 Ноября, 2011 - 15:13:36
Гость
Покинул форум
Сообщений всего: 112
Дата рег-ции: Июль 2011
Помог: 2 раз(а)
В какой то переменной всё же будет количество строк записано? Потом циклом пробежать строки по значению этой переменной и суммировать их. Как то так, в голове всё чётко представил, а как словами написать.
DeMonyan
Отправлено: 07 Ноября, 2011 - 15:19:34
Новичок
Покинул форум
Сообщений всего: 43
Дата рег-ции: Нояб. 2011
Помог: 0 раз(а)
filkeith пишет:
В какой то переменной всё же будет количество строк записано? Потом циклом пробежать строки по значению этой переменной и суммировать их. Как то так, в голове всё чётко представил, а как словами написать.
В принципе записывать куда-то количество строк можно. Но как потом циклом то их пробегать? Я не пойму как их индексировать, всмысле как определять какие суммировать?
UPD:
Хотя есть идея... В каждой строке имя полей имеет вид: имя1,имя1...имя7. Можно брать эти цифры, но мои познания джаваскриптов не так сильны, как хотелось бы...
Покинул форум
Сообщений всего: 112
Дата рег-ции: Июль 2011
Помог: 2 раз(а)
сам в js так себе, ну например у каждого поля будет id'шник, т.е. <input... ...id="string1"> и т.д. <input... ...id="stringN">
что бы посчитать сколько таких строк, вроде должна сработать
var s = $('input').size();// Общее кол-во инпутов на странице.
for(k=0;k<s;k++){
var input = $('input').get(k);// инпут под номером n
}
ему надо сложить значения которые вводятся в инпут, просто проблема в том что инпутов может быть разное количество, поэтому я и предложил посчитать кол-во инпутов и в цикле потом пробежать по ним всем, дёргая из них значения
DeepVarvar
Отправлено: 08 Ноября, 2011 - 07:12:40
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Yeah, this method is a "historical artifact" of sorts. The idea of deprecating it has been kicked around before, but it might be worth bringing it up again on the jQuery dev forum.
Покинул форум
Сообщений всего: 43
Дата рег-ции: Нояб. 2011
Помог: 0 раз(а)
filkeith пишет:
сам в js так себе, ну например у каждого поля будет id'шник, т.е. <input... ...id="string1"> и т.д. <input... ...id="stringN">
что бы посчитать сколько таких строк, вроде должна сработать
то что написал, не проверял на работоспособность, это, что в голову пришло
Идея в общем понятна, можно конечно id во всех поменять, но уж больно это хлопотное значение. Направление понятно попробую сам подумать ещё. Но тут штука вот в чём, инпуты примерно так в таблице рассположены:
<input... ...id="string1"> и т.д. <input... ...id="string7">
. . . . . . . . .
<input... ...id="other_string1"> и т.д. <input... ...id="other_string7">
И последняя строка в которой должна быть сумма по столбцам:
<input... ...id="sum_string2"> и т.д. <input... ...id="sum_string7">
То есть надо складывать инпуты у которых ID оканчивается одинаковой цифрой.
Попробую ещё раз описать задачу: На странице есть селект. В зависимости от его значения выводится определённая таблица, структура таблиц одинаковая, то есть столбцы идентичны, а количество строк может быть разным. Инпуты в каждой строке имеют одинаковые имена с добавлением в конце цифры (номер инпута в строке). Данные вводятся в инпуты с индексом 1. По ним рассчитываются значения инпутов с индексами от 2 до 7. А в последней строке таблица инпутов только 6, и их индексы начинаются с 2. И нужно в них выдавать сумму всех полей с таким идексом.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.