如何将ASP.Net页面链接到代码?

时间:2013-09-10 08:42:16

标签: c# asp.net .net webforms

我有一个清单:

<ul class="question">
    <li>eBook Reader</li>
    <li>Normal Mobile</li>
    <li>Smartphone</li>
    <li>PC / Laptop</li>
    <li>Landline Telephone</li>
    <li>Tablet</li>
    <li>Games Console</li>
</ul>
<a href="#" class="button next">Continue</a>

用户可以点击任何<li>项目,它会添加一个选定的类别。当他们点击继续时,它需要在服务器上的一个方法上运行,该方法将接受所选<li>的索引并对其执行某些操作。

问题是我不知道如何使用.aspx页面执行此操作。我试过这个:

<asp:LinkButton runat="server" OnClick="ContinueClick" Text="Continue" CssClass="button next" /> 

而不是现有的<a>标签,但我似乎无法从中获取任何有意义的内容。

3 个答案:

答案 0 :(得分:0)

在要使用其属性和css-class访问服务器端的元素上添加Idrunat="server"

您也可以通过添加单选按钮而不是列表来解决此问题。

您的问题的另一个解决方案可能是隐藏控件,其中包含所选元素的ID。

答案 1 :(得分:0)

我认为这应该是radio button list,然后从那里获取所选值而不是使用列表。请查看此link,了解如何使用单选按钮列表。

我认为当您希望用户从组中单一选择时,radio button list是正确的选项。如果您想要多选,请使用checkbox list

代码与此类似......

<asp:RadioButtonList ID="questions" runat="server">  
    <asp:ListItem>eBook Reader</asp:ListItem>  
    <asp:ListItem>Normal Mobile</asp:ListItem>  
    <asp:ListItem>Smartphone</asp:ListItem>  
    <asp:ListItem>PC / Laptop</asp:ListItem> 
    <asp:ListItem>Landline Telephone</asp:ListItem> 
    <asp:ListItem>Tablet</asp:ListItem> 
    <asp:ListItem>Games Console</asp:ListItem> 
</asp:RadioButtonList>


protected void ContinueClick(object sender, System.EventArgs e)   
{   
  //questions.SelectedItem.ToString();   
} 

答案 2 :(得分:-1)

您可以通过JavaScript手动触发回发到ASP.NET,如ASP.NET postback with JavaScript