2015-02-14 4 views
-4

Я написал основную условную логику jQuery ... если что-то конкретное происходит, множество переменных задано для определенных значений, и они выводятся в html. Базовая структура выглядит следующим образом:Переписать в свою собственную функцию

if (...) { 

    define variables and start html-output 

} else if (...) { 

    define variables and start html-output 

} else if (...) { 

    define variables and start html-output 

} else { 

    error-output 

} 

Это код, который я использую для HTML вывода

 $('#dptTime1_1').html(dptTime1_1); 
     $('#arrTime1_1').html(arrTime1_1); 
     $('#tflTime1_1').html(tflTime1_1); 
     $('#fliNmbr1_1').html(fliNmbr1_1); 
     $('#dptTime1_2').html(dptTime1_2); 
     $('#arrTime1_2').html(arrTime1_2); 
     $('#tflTime1_2').html(tflTime1_2); 
     $('#fliNmbr1_2').html(fliNmbr1_2); 
     $('#trPlane1_1').html(flPlane1_1); 
     $('#trPlane1_2').html(flPlane1_2); 
     $('#flPrice').html(flPrice); 
     $('#flPriceTotal').html(flPriceTotal); 
     $('#flPassengers').html(flPassengers); 

Прямо сейчас, мне нужно повторно использовать весь код в каждом условном кронштейне для вывода HTML ... можно ли превратить его в функцию, которую я могу вспомнить каждый раз вместо того, чтобы использовать весь код?

+0

так, вы пытаетесь сказать, что вторая часть кода в настоящее время вставлен в каждой ветви, что если-заявление? –

+0

Да ... точно ... Я открыт для лучших решений ... – paelzer

+0

, пожалуйста, используйте Google или поиск SO! У тега, который вы добавили, есть много вопросов, связанных с этим. – Kroltan

ответ

1
function declare(selectors){ 
    var array = selectors.split(","); 
    $.each(array,function(i){ 
     $('#'+array[i]).html(array[i]); 
    }); 
} 

Для вызова функции:

declare('dptTime1_1,arrTime1_1,tflTime1_1 .. '); 
+0

Спасибо, я попытался сделать небольшой jsfiddle ... но я не получил его работать ... приятель, вы можете еще раз взглянуть ... https://jsfiddle.net/paelzersebbi/ptz3xm14/ – paelzer

+0

'declare ('dptTime1_1, arrTime1_1, tflTime1_1 ..'); ' удалить пробел после запятой –

+0

Мне очень жаль, но я не понимаю ... – paelzer

Смежные вопросы