在javascript中,我想将下拉列表中的选定值与后面的C#代码中的值列表进行比较。我已经尝试通过HiddenField传递一个字符串列表,但我无法解决'无法获取属性'拆分'未定义或空引用'的问题。
浏览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 ;
}
}
或者......如果我传递一个数组,而不是将字符串列表分配给我的隐藏字段? Fwiw - 该项目不是MVC。
编辑:我的代码隐藏列表是从数据表列中的值派生的。
答案 0 :(得分:2)
更改以下代码行
HFList = this.CSVList.split(',');
到
HFList = CSVList.split(',');
因为CSVList是局部变量。