Javascript 使用razor获取foreach中输入的post值

Javascript 使用razor获取foreach中输入的post值,javascript,razor,Javascript,Razor,我正在尝试创建一个元素列表,您可以在其中发布id。e var只是一个对象列表 @for (int i = 0; i < e.Count; i++) { <li> <input type="hidden" name="id" value="@e[i].id"/> <a onclick="document.getElementById('form').submit();">@e[i].name</a> </li> }

我正在尝试创建一个元素列表,您可以在其中发布id。e var只是一个对象列表

@for (int i = 0; i < e.Count; i++)
{
<li>
    <input type="hidden" name="id" value="@e[i].id"/> 
    <a onclick="document.getElementById('form').submit();">@e[i].name</a>
</li>
}

谢谢

目前,您的值将以逗号分隔的列表形式出现在请求[id]中。这是因为同一表单中有多个元素具有相同的名称属性值

您可以使用string.Split方法单独处理服务器上的值:


您还必须为name属性使用不同的名称..并且请解释什么是请求的ur pblm。但是通过这种方式生成的名称保持不变,我可以执行类似name[id-@i]的操作,这实际上可以创建不同的名称,但我如何知道哪个名称是被输入的?是的,我可以这样做,但问题是我想确定哪个名称被按下。哪个“什么”被按下?
Request["name"];
if(IsPost && !Request["id"].IsEmpty()){
    foreach(var id in Request["id"].Split(new[]{','}, StringSplitOptions.RemoveEmptyEntries))
       // process the id
    }
}