Javascript ASP.net-将列表从代码隐藏传递到java脚本的最佳方式是什么?

Javascript ASP.net-将列表从代码隐藏传递到java脚本的最佳方式是什么?,javascript,c#,asp.net,Javascript,C#,Asp.net,在javascript中,我想将下拉列表中的选定值与C#代码隐藏中的值列表进行比较。我尝试通过HiddenField传递字符串列表,但无法解决“无法获取未定义或空引用的属性”split”的问题 环顾Stackoverflow和其他地方,我尝试了以下代码的许多变体,但“拆分错误”阻碍了我 <asp:HiddenField ID="HiddenFieldList" runat="server" /> //Code behind: HiddenFieldList.Value = Stri

在javascript中,我想将下拉列表中的选定值与C#代码隐藏中的值列表进行比较。我尝试通过HiddenField传递字符串列表,但无法解决“无法获取未定义或空引用的属性”split”的问题

环顾Stackoverflow和其他地方,我尝试了以下代码的许多变体,但“拆分错误”阻碍了我

<asp:HiddenField ID="HiddenFieldList" runat="server" />

//Code behind:
HiddenFieldList.Value = String.Join(",", ValuesList);

//javascript
var CSVList = document.getElementById("HiddenFieldList").value;
var HFList = [];
HFList = this.CSVList.split(',');

// hoping to get to here...
for(i = 0; i < HFList.length; i++) 
{
   if (DDL == HFList[i])
   {
       do stuff ;
       break ;
    }
 }

//代码隐藏:
HiddenFieldList.Value=String.Join(“,”,ValuesList);
//javascript
var CSVList=document.getElementById(“HiddenFieldList”).value;
var-HFList=[];
HFList=this.CSVList.split(',');
//希望能到这里。。。
对于(i=0;i
或者…我应该传递数组而不是给隐藏字段分配字符串列表?? Fwiw-该项目不是MVC


编辑:我的代码隐藏列表是从datatable列中的值派生的。

更改以下代码行

HFList = this.CSVList.split(',');


因为CSVList是局部变量。

请更改以下代码行

HFList = this.CSVList.split(',');


因为CSVList是局部变量。

在ASP.NET页面上,在服务器端,只需生成一组以
开头,以
结尾的文本,其中包含
var theArray=[…]
。在客户端,您将使用数组作为局部变量。请查看我的编辑-底线。请添加剃须刀标记请查看我的编辑将您的代码this.CSVList.split(',')更改为CSVList.split,只需将其删除。在ASP.NET页面的服务器端,只需生成一组以
开头,以
结尾的文本,其中包含
var theArray=[…]
。在客户端,您将使用数组作为局部变量。请查看我的编辑-底线。请添加剃须刀标记请查看我的编辑将您的代码this.CSVList.split(',')更改为CSVList.split。只需删除它即可。它现在可以正常工作。令人沮丧的是,我以前尝试过与您建议的相同的文本,但仍然收到错误。谢谢您的时间,现在一切正常。令人沮丧的是,我以前尝试过与您建议的相同的文本,但仍然收到错误。谢谢你抽出时间。