2016-11-23 8 views
0

したがって、私は2つのjavascriptメソッドを作成しようとしていました。最初の方法はgraphMakingを行い、もう一方は正しいパラメータを最初のメソッドに送信して、送信されたパラメータに従ってグラフを作成することです。問題は、 "arguments [i]"で送信されたパラメータを順番にループする必要があることですストリングを形成する:"IF"ステートメントでの文字列引数の使用

データ[I] .Names == "A" を||私(cityStringは)これが機能するためにRDERに置き換えてください場合何

var numIndex = []; 
    var cityString = ""; 
       for (var j = 1; j < arguments.length; j++) 
       { 
        cityString = cityString + "||" + " data[i].Names==\"" + arguments[j] + "\""; 
        alert(arguments[j]); 
       } 
       cityString = "data[i].Names==\"" + arguments[0] + "\""; 
    for (var i = 0; i < data.length; i++) { 
     if (cityString) 
     { 
     numIndex.push(i); 
     } 
    } 

:ここにデータ[i]が.Names == "B"

とは私が思い付いた何ですか?事前に 感謝:)

//////////////////////////////////////// ///////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////

[EDIT]わかりました、私は私のダムとHERESに実際のコードだったasp.netのコードをやっていたので、そのC#がある理由HERESに本物:

function makeGraph() { 
     var chrt = document.getElementById("myCanvas"); 
     $.ajax({ 
      url: '../api/values', 
      type: 'GET', 
      datatype: 'json', 
      success: function (data) { 
       var totalLabel = []; 
       var totalValue = []; 
       var totalLabel2 = []; 
       var totalValue2 = []; 
       var cityValue = []; 
       var cityName = []; 
       var numIndex = []; 
       var cityString = ""; 
       for (var j = 1; j < arguments.length; j++) 
       { 
        cityString = cityString + "||" + " data[i].Names==\"" + arguments[j] + "\""; 
        alert(arguments[j]); 
       } 
       cityString = "data[i].Names==\"" + arguments[0] + "\""; 
       for (var i = 0; i < data.length; i++) { 
        totalLabel.push(data[i].Names); 
        totalValue.push(data[i].ValuesDouble); 
        totalLabel2.push(data[i].Names2); 
        totalValue2.push(data[i].ValuesDouble2); 
        if (cityString) { 
         numIndex.push(i); 
        } 

       } 
       for (var k = 0; k < numIndex.length; k++) { 
        cityValue.push(data[numIndex[k]].ValuesDouble); 
        cityName.push(data[numIndex[k]].Names); 
       } 

       $(function() { 
        Highcharts.chart('container', { 
         chart: { 
          type: 'column', 
          backgroundColor: 'black' 
         }, 
         title: { 
          text: '' 
         }, 
         xAxis: { 
          categories: cityName, 

         }, 
         yAxis: { 
          min: 0, 
          tickInterval: 100000, 
          title: { 
           text: '' 
          } 
         }, 
         legend: { 
          verticalAlign: 'top', 
          reversed: false, 
          backgroundColor: 'lightgrey' 
         }, 
         plotOptions: { 
          series: { 
           stacking: 'normal' 
          } 
         }, 
         series: [ 

         { 
          name: 'Joe', 
          data: cityValue, 
          color: 'green' 

         }, 
         { 
          name: 'Joe', 
          data: cityValue, 
          color: 'yellow' 
         }, 
         { 
          name: 'Jane', 
          data: cityValue, 
          color: 'blue' 
         }] 
        }); 
       }); 

      } 
     }) 

    } 
+0

ループ変数として 'j'を使用しているようですが、このシナリオでは' i'は何ですか? –

+0

申し訳ありませんが、if(cityString) { numIndex.push(i); }は[i]ループ内にあります – MVCNoob

+0

そのコードのどの部分がC#にありますか?また、関数シグネチャ(一般的にはより完全なコード)を投稿できますか?また、文字列内に何らかのスクリプトを構築しているように感じます。文字列に何を期待していますか? –

答えて

0

私は私を最後に発見しましたeval( "if-statement")を使用していた自分の答えif-statementが文字列の形のif条件である場合

+0

これは、特に 'eval'を使って、ひどい*解決策のように思えます。 – krillgar

+0

私よりも良い解決策があれば本当に興味があります...投稿してください。前もって感謝します – MVCNoob

関連する問題