2011-10-05 14 views
0

私はコードの中でいくつかのクエリを行い、値を隠しフィールドに代入します。どのように私はJavascriptに同じ値を渡すことができます。私は部分的なページの負荷が更新されていないので、セッションを使用したくない。updatePanelを使用して部分的なポストバックでjavascriptに値を渡す方法

これは私が使用するコードです:

<script type="text/javascript"> 
    google.load("visualization", "1", { packages: ["corechart"] }); 
    google.setOnLoadCallback(drawChart); 
    //Draw a pie 
    function drawChart() { 
     var data = new google.visualization.DataTable(); 
     data.addColumn('string', 'Task'); 
     data.addColumn('number', 'Hours per Day'); 
     data.addRows(4); 

     data.setValue(1, 0, 'Not Received'); 
     data.setValue(1, 1, Value1); 
     data.setValue(2, 0, 'Received'); 
     data.setValue(2, 1, Value2); 
     data.setValue(3, 0, 'Read'); 
     data.setValue(3, 1, Value3); 
     var chart = new google.visualization.PieChart(document.getElementById('chart_div')); 
     chart.draw(data, { width: 450,backgroundColor:'#DCDCDC', height: 300, title: 'Message Status' }); 

     // to draw a bar 
     var progress1 = new RGraph.VProgress('progress1', Value4, 100); 
     progress1.Set('chart.colors', [Value5]); 
     progress1.Set('chart.tickmarks', false); 
     progress1.Set('chart.margin', 3); 
     progress1.Set('chart.tickmarks.inner', false); 
     progress1.Set('chart.label.inner', true); 
     progress1.Set('chart.gutter.left', 20); 
     progress1.Set('chart.gutter.right', 40); 
     progress1.Set('chart.tickmarks', true); 
     progress1.Set('chart.units.post', '%'); 
     progress1.Draw(); 
     }   

最後の行の値が隠しフィールドから渡す必要があります。 plsは私にいくつかのコード例を与えます。

答えて

0

:このようなことが、その後(フォーム要素内)、ページの応答に含まれます

"var data = 1234" 

scriptはに等しくなるものの例

data.setValue(1, 1, "<%=ServerSideFunction()%>"); 

EDIT

:呼び出されて、あなたはこのような何かを行うことができます

あなたが隠しフィールドに値を代入していると言ったので、なぜあなただ​​けのJavaScriptでのHiddenFieldから値を取得していない?:

はJavaScript:

var value = document.getElementById("<%=HiddenField1.ClientID%>").value; 

のjQuery:

ページが転記されるまで利用できない値を取得する必要がある場合は、PageMethodsの使用方法を検討します。私は、更新パネルを持っているとして、私は私のページにスクリプトマネージャを持っている
http://blogs.microsoft.co.il/blogs/gilf/archive/2008/10/04/asp-net-ajax-pagemethods.aspx

+0

値を取得するメソッドを呼び出すことを提案していますか? JS Cantには、それぞれの値に対して別々のメソッドを使用することに多くの価値を渡す必要があります。 – Mark

+0

私はちょうどあなたの事例に行きました。あなたの質問を拡大することができれば、私は自分の答えを更新します。 –

+0

私は私のJavascriptに5値を渡さなければならない – Mark

0

ページの読み込み時にクライアントにサーバー側のデータを送信しようとしている場合は、.NET ScriptManagerクラスを使用してページにスクリプトを含めるか、インライン化します(例:var value = <%= Value %>)。ここで

は、のScriptManagerを使用して、応答でスクリプトを含める方法の例です:

Page.ClientScript.RegisterStartupScript(Me.GetType(), Me.GetType.Name(), script, True) 

オブジェクトscriptこの場合には、ページに追加する実際のスクリプトを含む文字列です。このコードがあるときに応じて、

<script>var data = 1234</script> 
+0

はここPageMethodsを使用する方法について説明の記事です。コード例を教えてください – Mark

+0

@マーク - 私の編集をご覧ください。 –

関連する問題