Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.10.2016, 12:50   #11
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

да, так
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 23.10.2016, 12:51   #12
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 406
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
да, так
Ну осталось за малым реализовать это)))
Еду медленно, но верно!
spoon100500 вне форума Ответить с цитированием
Старый 24.10.2016, 10:57   #13
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 406
По умолчанию

Цитата:
Сообщение от spoon100500 Посмотреть сообщение
Если правильно понял, одна переменная для всех трех функций т.е. мы её будем перезаписывать каждый раз при нажатии кнопок button1, button2, button3 и вызывать эту переменную кнопкой Расчет?
Не доходит, как передать при нажатии кнопки функцию в переменную?
Накидал, но выдает ошибку
Uncaught TypeError: Cannot read property 'onclick' of undefined
Код:
var start;
var button1, button2, button3;

button1 = byId('button1');
button2 = byId('button2');
button3 = byId('button3');

if (button1.onclick) {
                start = myFunc1;
            } else if (button2.onclick) {
			    start = myFunc2;
		    } else if (button3.onclick) {
			    start = myFunc3;
			};
        byId('button4').onclick = start;
Еду медленно, но верно!

Последний раз редактировалось spoon100500; 24.10.2016 в 10:59.
spoon100500 вне форума Ответить с цитированием
Старый 24.10.2016, 11:19   #14
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 406
По умолчанию

Сделал так
Код:
if (button1 = myFunc1) {
		if (button1.onclick) {
                start = myFunc1;
            } else if (button2 = myFunc2) {
			if (button1.onclick) {
			    start = myFunc2;
		    } else if (button3 = myFunc3) {
			if (button3.onclick) {
			    start = myFunc3;
				}
				}
				}
			};
        byId('button4').onclick = start;
Теперь выдает ошибку для byId('button4').onclick = start; Uncaught TypeError: Cannot set property 'onclick' of null
Еду медленно, но верно!
spoon100500 вне форума Ответить с цитированием
Старый 24.10.2016, 11:50   #15
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 406
По умолчанию

Пробывал так, так мне больше понравилось, хоть есть смысл))) Но одна хрень не работает(((((
Код:
 <script type="text/javascript">

    function byId(id){ return document.getElementById(id); }
        
        // -------------------------------------------------------
        var intp_a, intp_b;
        var sel_c, sel_d, sel_e, sel_f;
	var start;
        var rezult = 0;
        var rezult_output = 0;

        var a,b,c,d,e,f;

        // -------------------------------------------------------
        window.addEventListener('load', function(){

            intp_a = byId('intp_a');
            intp_b = byId('intp_b');
            sel_c = byId('sel_c');
            sel_d = byId('sel_d');
            sel_e = byId('sel_e');
            sel_f = byId('sel_f');
			
            rezult_output = byId('rezult_output');

            //byId('button1').onclick = myFunc1;
            //byId('button2').onclick = myFunc2;
            //byId('button3').onclick = myFunc3;

			byId('button1').onclick = get1;
			byId('button2').onclick = get2;
			byId('button3').onclick = get3;
			byId('button4').onclick = start;
        });
		//--------------------------------------------------------
                function get1(){
		start = myFunc1;
		};
		function get2(){
		start = myFunc2;
		};
		function get3(){
		start =myFunc3;
		};
      
        // -------------------------------------------------------
        function getValues(){

            a = parseInt( intp_a.value );
            b = parseInt( intp_b.value );

            c = parseInt( sel_c.value );
            d = parseInt( sel_d.value );
            e = parseInt( sel_e.value );
            f = parseInt( sel_f.value );

        }

        function printValues(){ 
            var out = '<b>Результат</b>: ["<span class="ctr">'+rezult+'</span>"]';
            rezult_output.innerHTML = out;
            console.log( out );
        }

        // -------------------------------------------------------
        function myFunc1() { 
            getValues(); rezult = (a * b * c); printValues();

        }
        
        function myFunc2() { 
            getValues(); rezult = (a * b * d + e);  printValues();
        }
        
        function myFunc3() { 
            getValues(); rezult = (a * b * f); printValues();
        }
        // -------------------------------------------------------


    </script>
Еду медленно, но верно!

Последний раз редактировалось spoon100500; 24.10.2016 в 19:09.
spoon100500 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Слитное/раздельное написание знаков препинания newerow1989 Свободное общение 4 26.06.2015 11:30
Sleep останавливает выполнение всего в программе а не задерживает выполнение конкретного куска кода? Illusiony Общие вопросы Delphi 19 22.02.2015 18:37
Раздельное сворачивание форм Shouldercannon Общие вопросы Delphi 6 09.09.2014 14:16
Раздельное оформление в Social Engine 4 Green4el WordPress и другие CMS 1 14.01.2013 14:35
как прервать выполнение всех функций которые были запущены setTimeout Arassir JavaScript, Ajax 1 20.10.2011 16:20