![](/img/trans.png)
[英]Pass variable from server-side controller to client-side to use in client-side JavaScript
[英]How can I send a variable from the Server-side to the Client-side?
我想將變量從“保護頁面加載”傳遞到客戶端JavaScript,但是當我嘗試
var variable=<%=count %>
它給我一個錯誤,上面寫着:“期望表達式”,在這種情況下我該怎么辦? 如何傳遞變量?
我的代碼:
<script runat="server">
public int countSK = 0;
public int countFaze = 0;
public int countAstralis = 0;
public int countNip = 0;
public int countCloud = 0;
public int countG2 = 0;
public int countNorth = 0;
public int countVP = 0;
public int countMouz = 0;
public int countLiquid = 0;
public int countGambit = 0;
public int countFnatic = 0;
public int countRene = 0;
public int countEnvy = 0;
public int countNavi = 0;
protected void Page_Load(object sender, EventArgs e)
{
if ((string)Session["username"] != "ADMIN")
{
Response.Redirect("NotAdmin.aspx");
Response.End();
}
string conStr = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\KatzirDatabase.mdf;Integrated Security=True;User Instance=True";
string cmdStr = "SELECT favT FROM tbl";
SqlConnection conObj = new SqlConnection(conStr);
SqlCommand cmdObj = new SqlCommand(cmdStr, conObj);
conObj.Open();
SqlDataReader dr = cmdObj.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
string team= dr["favT"].ToString();
switch (team)
{
case "sk": countSK++; break;
case "faze": countFaze++; break;
case "astralis": countAstralis++; break;
case "nip": countNip++; break;
case "cloud9": countCloud++; break;
case "g2": countG2++; break;
case "north": countNorth++; break;
case "vp": countVP++; break;
case "mouz": countMouz++; break;
case "liquid": countLiquid++; break;
case "gambit": countGambit++; break;
case "fnatic": countFnatic++; break;
case "renegades": countRene++; break;
case "envyus": countEnvy++; break;
case "navi": countNavi++; break;
}
}
}
conObj.Close();
}
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<!--Load the AJAX API-->
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
// Load the Visualization API and the corechart package.
google.charts.load('current', { 'packages': ['corechart'] });
// Set a callback to run when the Google Visualization API is loaded.
google.charts.setOnLoadCallback(drawChart);
// Callback that creates and populates a data table,
// instantiates the pie chart, passes in the data and
// draws it.
function drawChart() {
// Create the data table.
var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');
data.addRows([
['SK',<%=countSK %>],
['Faze',<%=countFaze%>],
['Astralis',<%=countAstralis%>],
['Nip',<%=countNip %>],
['Cloud9',<%=countCloud%>],
['G2',<%=countG2%>]
['North',<%=countNorth %>],
['VP',<%=countVP%>],
['Mouz',<%=countMouz%>]
['Liquid',<%=countLiquid %>],
['Gambit',<%=countGambit%>],
['Fnatic',<%=countFnatic%>]
['Renegades',<%=countRene %>],
['EnvyUs',<%=countEnvy%>],
['Navi',<%=countNavi%>]
]);
// Set chart options
var options = { 'title': 'Favorite Team',
'width': 400,
'height': 300
};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
</script>
在這里,您可以添加我的代碼,如果您能找到我的問題,我將非常感謝!
請在下面使用,並確保在類頂部將變量聲明為Public
var variable='<%=count %>'
您可能缺少單引號: var variable = '<%=count%>';
然后將計數定義為頁面上的公共屬性
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.