C# 用c填充javascript数组#

C# 用c填充javascript数组#,c#,javascript,asp.net,C#,Javascript,Asp.net,如何用c#in-behind代码填充javascript中定义的数组 编辑: 这是我的密码 protected void Page_Load(object sender, System.EventArgs e) { string[] locations = new string[] { "Las Vegas", "Los Angeles", "Tampa", "New York", "s", "sss" }; string jsArray = Ge

如何用c#in-behind代码填充javascript中定义的数组

编辑:

这是我的密码

protected void Page_Load(object sender, System.EventArgs e)
{
string[] locations = new string[] {
    "Las Vegas",
    "Los Angeles",
    "Tampa",
    "New York",
    "s",
    "sss"
};
string jsArray = GetJSArrayForVBArray(locations);
this.ClientScript.RegisterArrayDeclaration("usernames", jsArray);
}

private string GetJSArrayForVBArray(string[] vbArray)
{
StringBuilder myResult = new StringBuilder();
foreach (string item in Constants.vbArray) {
    {
        myResult.Append(",'" + item + "'");
    }
}
if ((myResult.Length > 0)) {
    return myResult.ToString().Substring(1);
} else {
    return "";
}
}
贾维特:

<script type="text/javascript">
    $(function () {
        var usernames = new Array();
        $("#tags").autocomplete({
            source: usernames
        });
    });
</script>

$(函数(){
var usernames=新数组();
$(“#标记”).autocomplete({
资料来源:用户名
});
});
听起来像是一份工作。请注意,如果在该页面上向下滚动,您将看到许多关于在C#中使用JSON的参考资料。这确实是一种在各种平台/语言之间来回传输数据的好方法。

使用该类。像下面这样的东西应该可以做到这一点

protected void Page_Load(object sender, System.EventArgs e)
{
    string[] locations = new string[] {
        "Las Vegas",
        "Los Angeles",
        "Tampa",
        "New York",
        "s",
        "sss"
    };

    JavaScriptSerializer serializer = new JavaScriptSerializer();

    string jsArray = serializer.Serialize(locations);
    this.ClientScript.RegisterClientScriptBlock(this.GetType(), "locations", jsArray, true);
}

生成一个javascript代码块来执行此操作
someArray.push(someValue)
。另外,检查您是否可以接受前面问题的一些答案。问问题而不回答是粗鲁的。语法荧光笔有什么问题@托马拉克@Jaroslav Jandek:谢谢。请给我一个链接以获取更多信息,或者给我一个@oded示例edited@shaahin当前位置我认为没有更简单的词来解释它。如果你不明白的话,请再读一遍我的评论。@Tomalak:是我做的。谢谢你的建议:)。非常感谢。如何在我的aspx页面中使用它?我不能在aspx页面中使用数组。请帮帮我。我用了这个密码$(函数(){var locations=new Array();$(“#tags”).autocomplete({source:locations});})@shaahin-我的代码输出到页面的内容是什么?不需要声明一个新的JavaScript数组来保存我们从服务器端输出的值,我们只需要将我们输出的内容分配给一个变量,然后将该变量值分配给要传递给AutoCompleteAlternative的对象的源属性,您可以使用
标记将调用serialize的结果直接写入aspx标记。请查看该页面上列出的链接。“转换”的大部分工作是由其中一个包完成的,具体取决于您的实现。具体来说,基本上是调用JSONECODE/JsonDecode(或使用帮助函数处理特定集合类型),代码位于: