none
asp.net mvc RRS feed

  • Вопрос

  • подскажите как можно передать ID и VALUE radiobutton'a в пост запросе если у меня их Несколько... и у каждого свой уникальный id

    пример: *@html.RadioButton("name", "value", new {id = 1});

    я легко могу получить значение ("value") получаю я ее с помощью параметра (formCollection), но мне также важно получить "ID"

    12 июня 2013 г. 9:13

Ответы

  • Дело в том, что идентификаторы предназначены для элементов DOM, и они не передаются при POST запросе непосредственно, а передаются ключи типа имя-значение. Т.е. в данном случае передаётся имя элемента формы, поэтому чтобы их идентифицироать, надо назначить элементам разные имена. Т.е. вам нужно использовать Name вместо Id.

    Да и поставьте в нике нормальное имя.

    12 июня 2013 г. 9:29
    Модератор
  • Т.е. Вам надо нечто подобное

    @Html.RadioButton("RadBtn1", "value", new { id = 1 });
    @Html.RadioButton("RadBtn2", "value", new { id = 2 });

    в данном случае RadBtn1 будет идентифицировать элемент, но это вудет атрибут name на клиенте.

    <input id="1" name="RadBtn1" type="radio" value="value" />
    <input id="2" name="RadBtn2" type="radio" value="value" />

    12 июня 2013 г. 9:57
    Модератор

Все ответы

  • Дело в том, что идентификаторы предназначены для элементов DOM, и они не передаются при POST запросе непосредственно, а передаются ключи типа имя-значение. Т.е. в данном случае передаётся имя элемента формы, поэтому чтобы их идентифицироать, надо назначить элементам разные имена. Т.е. вам нужно использовать Name вместо Id.

    Да и поставьте в нике нормальное имя.

    12 июня 2013 г. 9:29
    Модератор
  • Т.е. Вам надо нечто подобное

    @Html.RadioButton("RadBtn1", "value", new { id = 1 });
    @Html.RadioButton("RadBtn2", "value", new { id = 2 });

    в данном случае RadBtn1 будет идентифицировать элемент, но это вудет атрибут name на клиенте.

    <input id="1" name="RadBtn1" type="radio" value="value" />
    <input id="2" name="RadBtn2" type="radio" value="value" />

    12 июня 2013 г. 9:57
    Модератор
  • Т.е. Вам надо нечто подобное

    @Html.RadioButton("RadBtn1", "value", new { id = 1 });
    @Html.RadioButton("RadBtn2", "value", new { id = 2 });

    А можно это сделать через @foreach ,что бы было как ниже.

    @foreach (var row in db.Query(selectQueryString)){
    <tr>
    <td><input type="radio" id="@row.Id" name="@row.Name" value="value"></td>
    <td>@row.Name</td>
    <td>@row.Itog</td>
    </tr>
    }
    
    18 июня 2013 г. 17:23