Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Javascript + select + сумма всего этого дела, Не могу вывести данные... 
V
    Опции темы
Kirill Baranov
  Дата 26.11.2009, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 242
Регистрация: 30.6.2004

Репутация: нет
Всего: -2



Есть функция. Она априори неверная:

Код

<script LANGUAGE="JavaScript"> 
function price(form) {
    if (form.l_univ.value=1){
        var l_univ_price=4000;
        var a_univ_price=3540;
    }
    
    if (form.l_univ.value=8){
        var l_univ_price=8000;
        var a_univ_price=7080;
    }
    
    if (form.l_stan.value=1){
        var l_stan_price=4000;
        var a_stan_price=3540;
    }
    
    if (form.l_stan.value=8){
        var l_stan_price=8000;
        var a_stan_price=7080;
    }
    
    var abon_value=form.abon.value;
    var total_abon=(a_univ_price+a_stan_price)*abon_value;
    var total=l_univ_price+l_stan_price+total_abon;
    document.getElementById("total_price").innerHTML=total;
    document.getElementById("total_pr").value=total;
}
</SCRIPT>


Он находится в head страницы.


Есть форма на странице:

Код

            <form name="form"  onclick="price(this)" action="sendmail.php" method="post"> 
            <table border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td><table border="0" cellpadding="5">
                  <tr>
                    <td valign="top" width="300"><a href="#" class="btn-slide-univ" style="text-decoration:none; border-bottom:1px dashed; font-size:20px">ВНЕШТОРГ-Универсал</a></td>
                    <td valign="top"><select name="l_univ" style="border:0px; font-size:16px" onchange="javascript: var l_univ.value=this.value; alert('');">
                        <option value="">Количество рабочих мест</option>
                        <option value="1">1 рабочее место</option>
                        <option value="8">8 рабочих мест</option>
                      </select>                    </td>
                    <td align="right" valign="middle">&nbsp;</td>
                  </tr>
                  <tr>
                    <td colspan="3"><div id="panel">
                        <table width="90%" border="0" cellspacing="0" cellpadding="0">
                          <tr>
                            <td width="110" align="left" valign="top"><img src="/images/systems/un.jpg" align="left" style="margin-left:0px; margin-bottom:10px;" /></td>
                            <td align="left" valign="top"><strong>Корпоративные базы знаний по таможенному делу и ВЭД в Российской Федерации.</strong><br />
                              Ценность программного продукта - системная подача информации о внешнеторговой деятельности: таможенное, валютное, внешнеторговое законодательство; Товарная номенклатура ВЭД; мониторинг таможенных, биржевых и рыночных мировых цен; справочники и классификаторы по ВЭД и таможенному делу (участники ВЭД, таможенные органы, брокеры, перевозчики, СВХ, ТС и т.д. и т.п.).</td>
                          </tr>
                        </table>
                    </div></td>
                  </tr>
                  <tr>
                    <td width="300" valign="top"><a href="#" class="btn-slide-stan" style="text-decoration:none; border-bottom:1px dashed; font-size:20px">ВНЕШТОРГ-СтатАнализ</a></td>
                    <td valign="top"><select name="select2" style="border:0px; font-size:16px">
                        <option>Количество рабочих мест</option>
                        <option value="1">1 рабочее место</option>
                        <option value="8">8 рабочих мест</option>
                    </select></td>
                    <td align="right" valign="middle">&nbsp;</td>
                  </tr>
                  <tr>
                    <td colspan="3"><div id="panel-stan">
                        <table width="90%" border="0" cellpadding="5" cellspacing="0">
                          <tr>
                            <td width="110" align="left" valign="top"><strong><img src="/images/systems/smar.jpg" align="left" style="margin-left:0px; margin-bottom:10px;" /></strong></td>
                            <td align="left" valign="top" id="t_stan"><strong><a href="/systems/statistics-and-marketing/" class="subtitletext">ВНЕШТОРГ-СтатАнализ</a></strong>
                                <p class="p130"><strong>Статистический анализ внешнеторговой деятельности Российской Федерации и маркетинговые исследования (рейтинг, динамика) рынка международной торговли.</strong><br />
                                  Система даёт возможность оценить рынок участников ВЭД, оценить интересующий товар с точки зрения ценовых параметров, объёмов и условий контрактов, географии поставок. Это аналитический инструмент, необходимый руководству, маркетологам, таможенному отделу или отделу ВЭД.</p></td>
                          </tr>
                        </table>
                    </div></td>
                  </tr>
                  <tr>
                    <td width="300" valign="top"><a style="text-decoration:none; font-size:20px">Абонентское обслуживание</a></td>
                    <td valign="top"><select name="select2" style="border:0px; font-size:16px">
                      <option>Выберите период оплаты</option>
                      <option value="1">1 месяц</option>
                      <option value="3">3 месяця</option>
                      <option value="6">6 месяцев</option>
                      <option value="12">12 месяцев</option>
                                        </select></td>
                    <td align="right" valign="middle">&nbsp;</td>
                  </tr>
                </table></td>
                <td width="300" align="center" valign="middle" style="font-size:35px; color:#666666" id="total_price">0 руб.</td>
              </tr>
            </table>
            </form>



По идее... Когда меняется значение в первом селекте, должны появиться как минимум две переменные в джаваскрипте. Этого не происходит. Я не пойму в чем дело. А сроки жмут очко по-серьёзному :( Как сделать передачу значения option функции джаваскрипта, чтобы произвести нужные вычисления и вывести их на странице? Я откровенно в джаваскрипте - нуль. Попросили просто сделать.

Если что, эта функция должна работать тут http://vtexpert.ru/buy/
PM MAIL   Вверх
IDVsbruck
Дата 26.11.2009, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 7
Всего: 22



Оператором var как в скрипте, так и в обработчике события ты делаешь переменные локальными, доступными только в пределах соответствующей видимости. Чтобы обработчик менял переменные, надо сначала сделать их глобальными (в скрипте вне функций определенить с помощью var), а в дальнейшем пользоваться этими переменными (без var, конечно).
PM MAIL   Вверх
Kirill Baranov
Дата 27.11.2009, 01:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 242
Регистрация: 30.6.2004

Репутация: нет
Всего: -2



IDVsbruck, не пойму как определить переменные... глобальные сделать-то легко: var peremennaya=

А вот чему она = я не пойму никак. Что писать? getElementById селекта?
PM MAIL   Вверх
Kirill Baranov
Дата 27.11.2009, 02:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 242
Регистрация: 30.6.2004

Репутация: нет
Всего: -2



Код

<script LANGUAGE="JavaScript">
var l_univ_form;
var l_stan_form;
var form_abon_value;

function price() {
    l_univ_form=document.getElementById("l_univ").value;
    l_stan_form=document.getElementById("l_stan").value;
    form_abon_value=document.getElementById("abon").value;


Вот и всё) спасибо, что направили в верном направлении)))
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0721 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.