отметить только один флажок?

#asp.net-mvc-3

#asp.net-mvc-3

Вопрос:

У меня проблема с флажком. У меня есть список флажков, и я хочу отметить только один флажок и снять другие.

Я хочу сделать это в том же виде, возможно ли это? Как я могу это сделать?

 <div><input  type="checkbox" id="<%= id %>"  onchange='submit();'/> </div>
  

Спасибо

Ответ №1:

Похоже, вам действительно нужен переключатель. Переключатели являются взаимоисключающими, если вы даете им одно и то же имя:

 <input  type="radio" name="something" ... />
<input  type="radio" name="something" ... />
  

Если вам действительно нужны флажки, вам придется написать некоторую логику JavaScript.

Ответ №2:

Используйте переключатели, а не флажки.

 <div>
    foreach (var foo in model.Foos) {
        <input type="radio" name="foo" id="foo_@foo.Id" value="@foo.Id" /> 
        <label for="foo_@foo.Id">@foo.Value</label> <br />
    }
</div>
  

Что-то подобное должно создать список переключателей.

Кроме того, почему вы отправляете заявку, когда выбор изменен? Вы должны использовать jQuery для выполнения любых манипуляций со страницей на основе выбора на стороне клиента.

Ответ №3:

Вы могли бы использовать jQuery. в документе.Готово, вам нужно будет привязать событие изменения флажков к какой-либо функции, затем в вашей функции вы хотите сбросить все остальные флажки. Это при условии, что вы не хотите использовать переключатели, как было предложено выше.