从.aspx.cs页面访问变量值(循环中)到javascript

时间:2013-09-12 05:55:51

标签: javascript asp.net

我在.aspx.cs文件中有循环。

foreach (DataRow DRow in DT_Test_Question.Rows)
{
    Question_ID = DRow[1].ToString();
}

我想在没有回发的情况下访问java脚本中的Question_ID,但Question_ID给了我最后一个值。如何获取Question_ID的所有值?

2 个答案:

答案 0 :(得分:2)

使用以下代码获取aspx.cs文件

public string Question_ID = "";

protected void Page_Load(object sender, EventArgs e)
{
   foreach (DataRow DRow in DT_Test_Question.Rows) 
   {
        Question_ID += DRow[1].ToString() + ",";
   }
}

使用以下代码进行aspx

<script type="text/javascript">
  var Question_ID = '<%=Question_ID.Trim(',')%>'.split(',');
  .
  .
  // you can use Question_ID is array of string
</script>

注意:在您想在javascript中使用Question_ID之前,Question_ID必须具有值,因此将在page_load / init方法上进行赋值。另请注意,Question_ID必须是一个公共变量才能在javascript中访问它。

答案 1 :(得分:0)

有一个隐藏字段来保存所有Question_ID,如下所示......

StringBuilder question_IDs = new StringBuilder();

foreach (DataRow DRow in DT_Test_Question.Rows)
{
    if (DRow[1] != null)
    {
        Question_ID = DRow[1].ToString();
        if (question_IDs.length == 0)
            question_IDs.Append(Question_ID);
        else
            question_IDs.Append("," + Question_ID);
    }
}

hdnField.Value = question_IDs.ToString();