Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Получение результата функции (https://javascript.ru/forum/misc/73648-poluchenie-rezultata-funkcii.html)

Artur_Hopf 03.05.2018 15:51

Получение результата функции
 
Добрый день. Для вывода результат функции я делаю так
<button id="b1" onclick="test(7,2, 'res1', 'b1')">7+2</button>
<button id="b2" onclick="test(5,6, 'res2', 'b2')">5+6</button>
<div id="res1"></div>
<div id="res2"></div>
<script type="text/javascript">

function test(a, b, id, id2) {
   var data = document.getElementById(id);
   var data2 = document.getElementById(id2);
   var c = a + b
   data.innerHTML = c;
   data2.style.color = "blue";
}
</script>

То есть я передаю id кнопки и блока в функцию, а можно ли сделать это как то по другому? Просто бывают функции где используется множество id. Например у меня есть функция где нужно по нажатию на одну кнопку закрыть 7 графиков и показать 1 нужный, мне приходится по нажатию на кнопку отправлять это в функцию:
graph_inline("#1graph", "#2graph","#3graph","#4graph","#5graph", "#6graph","#7graph","#8graph",);

function graph_inline (g1, g2, g3, g4,g5, g6, g7, g8){
        $(g1).css({"display":"inline"});
        $(g2).css({"display":"none"});
        $(g3).css({"display":"none"}); 
        $(g4).css({"display":"none"}); 
        $(g5).css({"display":"none"}); 
        $(g6).css({"display":"none"}); 
        $(g7).css({"display":"none"}); 
        $(g8).css({"display":"none"}); 
}

Как можно этого избежать?:-?

рони 03.05.2018 15:57

Artur_Hopf,
graph_inline(0);

function graph_inline (index){
        $(".graph").css({"display":"none"}).eq(index).css({"display":"inline"});
        }

Artur_Hopf 03.05.2018 16:06

рони,
Спасибо :thanks:


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