0

c# で作成されたクラスのリストがあり、その値を javascript ファイルに送信する必要があります。C# で文字列を作成し、リストの値を入れました。

count = 0;
JString = "[";
for(i=0; i<x; i++)
{
    JString += "{Source:" + A[i] + ", Number:" + 3 + ", Target:" + B[i] + "},";
    count++;
}
JString = JString.Remove(JString.Length - 1, 1); //to remove the last ,
JString += "]";
GraphData.Text = "" + "var JString =" + JString + " ;" + "var count =" + count + " ;";

GraphData は、文字列を保存するためのラベルです。

JavaScript ファイルに、次を追加しました。

 $("#GraphData").val(); //to get the string sent

しかし、このようには機能していません。私は何か間違ったことをしていますか?

前もって感謝します:)

4

3 に答える 3

1
for(i=0; i<count; i++)
{
    JString += "{Source:" + A[i] + ", Number:" + 3 + ", Target:" + B[i] + "},";
    count++;
}

これは無限ループのように見えます。両方iを増やして、サイクルごとに 1 ずつカウントするので、i常に以下になりますcount

于 2012-09-07T11:49:13.083 に答える
0

ここでGraphDataはサーバーコントロールだと思います。この要素を取得するには、そのClientIDを使用します

これを試して

$( "#<%= GraphData.ClientID%>").val();

于 2012-09-07T12:39:49.630 に答える
0

無限ループの問題を解決したら、$('#GraphData').text();を呼び出す必要があります。Label asp.net ではspan要素としてレンダリングされるためです。

于 2012-09-07T11:54:43.507 に答える