以编程方式引用升序变量名称(var1,var2,...)

时间:2011-07-07 14:42:33

标签: c# jquery

我正在编写一个项目,可以根据用户输入确定最多200个特定产品的条目。基本上,我的GUI加载,并且每当金额字段发生更改时,我都会使用jQuery动态构建条目。当使用jQuery时,我只是以variable1,variable2,....,variableX(其中X是指示的条目数)的形式给出每个id。一小段代码澄清:

for(var i = 1;i <= amount_selected; i++) { 
    $('table_name tr:last').after('<tr><td><input type="text" id="variable' + i + '"></td></tr>');
} 

现在当我尝试移动到后端时,我试图通过将它们放在列表中来引用这些变量名称。我继续将它们放在HtmlInputText列表中,从列表本身调用变量名称。 (这样可以省去手动调用所有(最多200个)方法,这实际上不是一个选项)。

所以我所做的(在C#中)是:

List<HtmlInputText> listvar = new List<HtmlInputText>();
for(int i = 1; i <= amount_selected; i++) { 
    string j = "variable" + Convert.ToString(i);
    HtmlInputText x = j; 
    listvar.Add((x));
    samplemethod(listvar[i]);
}  

但它根本不起作用。有没有人有任何想法如何做到这一点,而不是手动这样做?我知道我的逻辑可能是完全关闭的,但希望这至少说明了我正在尝试做的事情。

2 个答案:

答案 0 :(得分:0)

你可以做$(“#variable”+ Convert.ToString(i))。val()

答案 1 :(得分:0)

我假设这些输入是一种形式?如果您要提交,则可以访问Request对象中的文本框:

List<string> results = new List<string>();
for (int i = 1; i <= amount_selected; i++)
{
    string s = String.Format("{0}", Request.Form["variable" + Convert.ToString(i)]);
    results.Add(s);
}