从Javascript中的代码隐藏到数组的字符串

时间:2011-09-19 16:02:08

标签: c# javascript

大家好我拥有从数据库中读取的代码,并在

后面的代码中填充一个字符串
List<string> rows = new List<string>();
    DataTable prods = common.GetDataTable("vStoreProduct", new string[] { "stpt_Name" }, "stpt_CompanyId = " + company.CompanyId.ToString() + " AND stpt_Deleted is null");

    foreach (DataRow row in prods.Rows)
    {

        prodNames += "\"" + row["stpt_Name"].ToString().Trim() + "\",";
    }
    string cleanedNanes =  prodNames.Substring(0, prodNames.Length - 1);
    prodNames = "[" + cleanedNanes + "]";

这会产生类似[“Test1”,“Test2”]

的内容

在javascript中我有

var availableTags = '<% =prodNames %>';

alert(availableTags);

我如何像javascript中的数组一样访问它,如

alert(availableTags[5]);

并获取给定索引的完整项目。

感谢任何帮助都很棒

3 个答案:

答案 0 :(得分:2)

摆脱引号:

var availableTags = <% =prodNames %>;

使用引号,您将创建一个JavaScript字符串。没有它们,你就有了一个JavaScript数组常量。

答案 1 :(得分:0)

您将不得不将变量从.NET拆分为JS数组。

退房:http://www.w3schools.com/jsref/jsref_split.asp

基于您的代码的示例:

var availableTags = '<% =prodNames %>';
var mySplitResult = availableTags .split(",");
alert(mySplitResult[1]);

答案 2 :(得分:0)

我相信split()会做你想做的事情:

    var availableTagsResult = availableTags.split(",");
    alert(availableTagsResult[1]) //Display element 1

这将从已在,

上拆分的字符串创建一个数组