2013-09-10 2 views
0

У меня есть список:Как связать страницу ASP.Net с кодом?

<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> тега, но я не могу показаться, чтобы быть в состоянии осуществить что-нибудь осмысленное из него.

+0

Является JavaScript/JQuery решение также жизнеспособными для вас или сделать вам нужно сохранить выбранные элементы в виде коллекции для последующего использования на другой странице? – Marco

+0

@Serv Мне нужно сделать обратный вызов на сервере каждый раз, когда они нажимают кнопку continue. Я сохраню эту информацию в базе данных, а затем перейду к другому продолжению на той же странице. – ediblecode

+0

, если вы хотите добавить классы css для выбранных/notselected clientside, вот вам jsfiddle: http://jsfiddle.net/qFeBA/ – Marco

ответ

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(); 
} 
0

Добавить Id и runat="server" на элементы, которые вы хотели бы получить на серверной стороне со своими атрибутами и css-классом.

Вы также можете решить эту проблему, добавив радиокнопки, а не список.

Другим решением вашей проблемы может быть скрытый элемент управления, который содержит идентификатор выбранного элемента.

Смежные вопросы