2016-10-06 10 views
0

私の機能は、見たい職務に基づいてユーザーの入力(1-5)に基づいていくつかのインデックス値を呼び出してから、インデックス値したがって、ユーザが3を入力すると、インデックス値0,1,2が書き込まれる必要があります。現時点では、入力に関連付けられたものだけを、その入力よりも下位のものすべてではなく書き込みます。これは私がこれまで持っているものです。単なる1つではなく複数のインデックス値を書く方法

function jobduties() { 
    var x = document.getElementById("input").value; 
    var y = x-1; 
    var duties = ["Sales", "Customer Service", "Management", "Driving", "Cleaning"]; 
    var z = " "; 

    while(x > y){ 
     z += z + duties[y]; 
     y++; 
     document.getElementById("print").innerHTML= z; 
    } 
} 
+1

? –

+0

y = 1は機能しませんでした。他のコードを試してみます – Pmurphy

+0

注: 'z + = z + duties [y];'は重複の原因となります –

答えて

0

問題は、ユーザが入力した場合ので、あなたは、y = x-1を設定しているということである3(X = 3)、yは2になります(X-1)...であなたはy = 2で始まり、zにそれを加えてからyを増やすので、次のものはy = 3であり、あなたの条件を満たすものではないので、y = 2だけを評価します(x> y )

var y = 0;

のために、これらの変更... 変更var y = x - 1; を試してみても、あなたは、z変数を編集+を削除します。

編集..ちなみに、私はちょうどあなたが選びまし方法以下の答えが、私は強くあなたの代わりに、はるかに簡単FORループを使用することをお勧めしますどのように `のvar Y = 1 'について

+0

'+ ='を '+'に変更するか、 '+ =' ...の右側に 'z +'を削除することを意味します。これらのどちらも、 no spaces –

+0

はい私は同意しますが、これは割り当てのためのものですが、whileループを使用する必要がある場合は、ありがとうございます。 – Pmurphy

+0

最終的にどのように書式を設定したらよいのでしょうか?テキストの? – Pmurphy

関連する問題