Как избежать оценки короткого замыкания на

Замените imgStr URL-адресом изображения перед добавлением.

$( "body" ).each(function() {
var imgStr;
var htmlWrap = '<div class="gi-chart-wrap"><span class="eltdf-title-holder reviews_tab ui-accordion-header ui-state-default ui-corner-all" role="tab" id="ui-id-3" aria-controls="ui-id-4" aria-selected="false" aria-expanded="false" tabindex="-1"><span class="eltdf-accordion-mark"><span class="eltdf_icon_plus icon_plus"></span><span class="eltdf_icon_minus icon_minus-06"></span></span><span class="eltdf-tab-title">GI Chart</span></span></div><div class="eltdf-accordion-content ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom" id="ui-id-4" aria-labelledby="ui-id-3" role="tabpanel" aria-hidden="true" style="display: none;"><img src="/wp-content/uploads/2019/01/' +imgStr+ '" alt="GI Chart" /></div></div>';

// If the body has the class append htmlWrap with the correct imgStr variable

if ( $( this ).hasClass( "product-fruit-nuts-superfood-with-baobab" ) ) {

    $( this )
    imgStr = 'gi-chart.png';
    htmlWrap = htmlWrap.replace("imgStr", imgStr);
    $(".eltdf-accordion-holder").each(function() {

        $(this).append(htmlWrap);

    });    

} else if ( $( this ).hasClass( "product-dark-chocolate-mandarin" ) ) {

    $( this )
    imgStr = 'gi-chart-2.png';
    htmlWrap = htmlWrap.replace("imgStr", imgStr);
    $(".eltdf-accordion-holder").each(function() {
        $(this).append(htmlWrap)
});

}});
29
задан Jon Seigel 7 April 2010 в 02:27
поделиться

5 ответов

Попробуйте это:

([model1, model2].map(&:valid?)).all?

Это возвратит true, если и будут допустимы, и создадут ошибки на обоих экземплярах.

26
ответ дан Codebeef 28 November 2019 в 01:32
поделиться

& работает просто великолепно.

irb(main):007:0> def a
irb(main):008:1> puts "a"
irb(main):009:1> false
irb(main):010:1> end
=> nil

irb(main):011:0> def b
irb(main):012:1> puts "b"
irb(main):013:1> true
irb(main):014:1> end
=> nil

irb(main):015:0> a && b
a
=> false

irb(main):016:0> a & b
a
b
=> false

irb(main):017:0> a and b
a
=> false
24
ответ дан Paul Smith 28 November 2019 в 01:32
поделиться

Оцените их отдельно и сохраните результат в переменной. Затем используйте простой & & между теми булевскими переменными :)

2
ответ дан Mehrdad Afshari 28 November 2019 в 01:32
поделиться

Вместо того, чтобы создать дополнительный массив с картой, можно передать блок all?.

[model_instance_1, model_instance_2].all? {|i| i.valid? }
-2
ответ дан August Lilleaas 28 November 2019 в 01:32
поделиться

Как насчет:

if [model1.valid?,model2.valid?].all?
  ...
end

Подходит для меня .

3
ответ дан 28 November 2019 в 01:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: