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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Динамичесоке изменение страницы, Преобразовать программу 
:(
    Опции темы
Helen09
Дата 8.12.2010, 23:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Такой вопрос: у меня написана программа, - форма заказа.
мне необходимо изменить код такм образом,чтобы в заисимости от того,что выберет посетитель, динамически формировалась окончательная сумма заказа. 
Предположим тортики имеют разную цену-50, 150 200, самовывоз-бесплатно, а доставка 100 р. 

я так понимаю, что надо сделать какую-то проверку, что мол нажат переключатель или нет, и если да, то задать значение. и в конце просуммировать с помощью calc. Вот тот код олько проблема в том как проверить и задать значение.
может я не так думаю и это можно сделать другим способом?
Подскажие пожалуйста.

Вот код МОЕЙ программы:
Код:
Код

<HTML>
    <HEAD>
        <TITLE>Заказ тортиков из малины</title>
    </head>

<script type ="text/javaScript">
    
            function dayMalinki() 
            {
                date = new Date();
                 var hours = date.getHours();                
                
                    if((hours >= 1)&& (hours < 12))
                        {malinka="<H3>Начни свой день с малинки!</H3>"}
                    if((hours >= 12) && (hours < 18))
                        {malinka="<H3>А у вас на обед малинка?!</H3>"}
                    if((hours >= 18)&& (hours < 23))
                        {malinka="<H3>Малинка полезна даже после 6!</H3>"}
                    document.write(malinka);            
            }
</script>

            
<BODY background="photo1.jpg">
        
    <FORM  method="post" action="[email protected]" ENCTYPE="text/plain">

<center>
<script  type="text/javaScript">
dayMalinki();
</script>
</center>
        <TABLE background="photo2.jpg" align="center" border="5" wigth="50%">

<TH colspan="3"><FONT size="4" fase="Comic Sans MS" color="009933">Форма заказа
<TR>
    <TD><IMG src="photo3.jpg">
    <TD><IMG src="photo4.jpg">
    <TD><IMG src="photo5.jpg">
</TR>
<TR>
    <TD align="center"><input type="radio" name="tort" value="malinovaia skazka">Малиновая сказка
    <TD align="center"><input type="radio" name="tort" value="malinovui peniok">Малиновый пенек
    <TD align="center"><input type="radio" name="tort" value="malinovoe sufle">Малиновое суфле
</TR>

<TR>
    <TD colspan="3"><FONT size="4" fase="Comic Sans MS" color="009933">Способ оплаты
    <select name="oplata" size="1">
        <option selected value="nalichnue1">Наличными курьеру при получении заказа
        <option value="nalichnue2">Наличными в офисе
        <option value="bezhalichnue">Безналичным путём через любой банк
     </select>
</TR>

<TR>
    <TD colspan="3"><FONT size="4" fase="Comic Sans MS" color="009933">Способ получения заказа
    <select name="oplata" size="1">
        <option selected value="kurer">Курьер
        <option value="sam">Самовывоз
        
     </select>
</TR>

<TR>    
    <TD colspan="3"><FONT size="4" fase="Comic Sans MS" color="009933">Фамилия и имя
         <input type="text" name="name" size="25">
<TR>

<TR>    <TD colspan="3"><FONT size="4" fase="Comic Sans MS" color="009933">Контактный телефон
         <input type="text" name="name" size="25">
<TR>

<TR>
    <TD colspan="3" align="center"><FONT size="4" fase="Comic Sans MS" color="009933">
        <input type="submit" name="submit" value="Отправить">
        <input type="reset" name="reset" value="Очистить">
</TR>
        </table>


        </form>

</body>
</html>

PM MAIL   Вверх
bars80080
Дата 9.12.2010, 01:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



порядок задачи очень простой:

1. на каждый элемент, из-за которого меняется сумма, вешаем обработчик. в общем случае это onchange="getsum();"
2. в функции getsum() пробегаем все поля и собираем сумму:

Код

function getsum() {
    var s = 0;
    // получить значение элемента oplata
    var oplata = document.getElementsByName('oplata')[0].value;
    // здесь мы должны просуммумировать, вроде s += oplata
}


однако, при данном коде просуммировать не получится, потому что где цены?



Цитата(Helen09 @  8.12.2010,  22:41 Найти цитируемый пост)
в конце просуммировать с помощью calc

что такое calc?
PM MAIL WWW   Вверх
Helen09
Дата 9.12.2010, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Хорошо, цены указаваются у каждого элемента в value?

И получаетсяя что для каждого элемента я должна вставить onchange="getsum();, так?
Тогда вопрос, а как он определяет, что переключатель включен и его значение надо включить в сумму. 
Просто мы таким еще ни разу не пользовались.
PM MAIL   Вверх
bars80080
Дата 9.12.2010, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



Цитата(Helen09 @  9.12.2010,  08:42 Найти цитируемый пост)
а как он определяет, что переключатель включен и его значение надо включить в сумму. 

Код

var el = document.getElementsByName('torts');
var ell = el.length;
var tort_price = 0;
for(var i = 0; i < ell; i++) {
    if(el[i].checked) { tort_price = el[i].value; break; }
}



Цитата(Helen09 @  9.12.2010,  08:42 Найти цитируемый пост)
Просто мы таким еще ни разу не пользовались. 

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


 




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


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

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