获取javascript变量的总和并将其插入jquery脚本

时间:2017-06-22 19:01:47

标签: javascript jquery arrays sum

我正在使用SSI Sawtooth软件进行调查,所以有些语法,即

[% GetValue(tram1) %];

来自SSI Sawtooth。

我想要做的就是得到这个问题,如果调查接受者对前十五个问题中的一个问题回答是肯定的话,那么Q1就会出现,不多也不少,否则我希望它被隐藏并跳到下一个问题。因此,为了做到这一点,我尝试制作一个数组并对十五(二进制1 =是0 =否)问题中的值求和。

但是,即使我选择了之前的15个问题中的一个,Q1也没有出现,但是这个代码根本没有显示出来。我认为我的主要问题可能是将sum变量正确地插入到jquery代码中,我已经将这个显示/隐藏jquery代码与其他变量一起使用了它。

<style>
#[% QuestionName() %]_div {display:none}
</style> 

<script>
</script> 

<script> type="text/javascript"> 

var T1 = [% GetValue(tram1) %];
var T2 = [%GetValue(tram2) %];
var T3 = [%GetValue(tram3) %];
var T4 = [%GetValue(tram4) %];
var T5 = [%GetValue(tram5) %];
var T6 = [%GetValue(tram6) %];
var T7 = [%GetValue(tram7) %];
var T8 = [%GetValue(tram8) %];
var T9 = [%GetValue(tram9) %];
var T10 = [%GetValue(tram10) %];
var T11 = [%GetValue(tram11) %];
var T12 = [%GetValue(tram12) %];
var T13 = [%GetValue(tram13) %];
var T14 = [%GetValue(tram14) %];
var T15 = [%GetValue(tram15) %];
var sum = T1 + T2 + T3 + T4 + T5 + T6 + T7 + T8 + T9 + T10 + T11 + T12 + T13 
+ T14 + T15;

$(sum);

setInterval(function () {
 if(document.mainform["sum"] == 1 ) {
    $("#[% QuestionName() %]_div").css('display', 'block');
}                
else {
    $("#[% QuestionName() %]_div").css('display', 'none')
}}, 100);

非常感谢任何帮助,提前谢谢!

1 个答案:

答案 0 :(得分:0)

简而言之,您的脚本代码类型=&#34; text / javascript&#34;&gt; 有额外的&#34; &gt; &#34 ;在它会导致问题。

我已经整理了一个片段,它看起来就像SSI Sawtooth数据在HTML页面中呈现的那样。我不确定您是否需要setInterval或$(sum)选择器。基本上,您可以使用此示例,您只需要使用Sawtooth变量代码切换零/一,并使div成为动态变量id(就像您在示例中已经拥有的那样)。

我假设[%GetValue(tram1)%] = 0或1,而不是[0]或[1]。如果是这种情况,并且数字周围有括号,请告诉我,我将修改该代码段。

请告诉我这是否有帮助!

&#13;
&#13;
var T1 = 0;
var T2 = 0;
var T3 = 0;
var T4 = 0;
var T5 = 0;
var T6 = 0;
var T7 = 0;
var T8 = 0;
var T9 = 0;
var T10 = 0;
var T11 = 0;
var T12 = 0;
var T13 = 0;
var T14 = 0;
var T15 = 1;
var sum = T1 + T2 + T3 + T4 + T5 + T6 + T7 + T8 + T9 + T10 + T11 + T12 + T13 +
  T14 + T15;

console.log(sum);

if (sum == 1) {
  $("#questionName_div").css('display', 'block');
} else {
  $("#questionName_div").css('display', 'none')
}
&#13;
#questionName_div {
  display: none
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="questionName_div">
  Div Here
</div>
&#13;
&#13;
&#13;