1

我想從asp.net應用程序中的c#初始化JavaScript數組值。我有下面我通過循環迭代代碼,從c#初始化javascript數組值#

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "assignGroupParty" + i, string.Format("javascript:SetProspectGroupPartyID({0},{1});"currentIndex, currentQueue.PartyID), true); 

這裏

的javascript:SetProspectGroupPartyID

是函數它設置在CURRENTINDEX位置的數組值。

O/P:- [undefined, 37316] 

它總是隻分配一個索引而另一個未定義。任何人都可以幫助我解決這個問題。 感謝

回答

2

你可以使用JavaScriptSerializer類這樣的:

int[] numbers = new int[] { 1, 2, 3, 4, 5}; 
var serializer = new JavaScriptSerializer(); 
var jsArray = string.Format("var jsArray = {0}", serializer.Serialize(numbers)); 

,然後通過使用例如註冊它ClientScriptManager.RegisterStartupScriptBlock方法:

ClientScriptManager cs = Page.ClientScript; 
cs.RegisterClientScriptBlock(
    this.GetType(), 
    "arrayDeclaration", 
    jsArray, 
    true 
);