Как я могу получить 2-ое определенное значение переключателя? - PullRequest
0 голосов
/ 21 октября 2019

Это мой HTML-код.

<form id="item">
<div class="form-group col-lg-3 col-md-3 col-sm-3 col-sx-3">
     <label for="itemtype">Hotel</label>
     <input type="radio" class="radio" id="itemtype" name="optradio" value="H" checked>
     <label for="itemtype">AirPort</label>
     <input type="radio" class="radio" id="itemtype" name="optradio" value="A">
</div>
</form>

И это мой JQuery.

function save() {
    debugger

    $.ajax({
        type: "POST",
        data: { "item": { "itemid": $("#itemid").val(),  "itemtype": $('#itemtype').val() }},
        url: "@Url.Action("Save", "Item")",
        cache:false,
        success: function (data) {
            debugger
            if (data.isSuccess) {
                alert("Saved Succesfully!");
                window.location.href = "@Url.Action("Index", "Item")";
            }
        }, error: function (err) {
            alert("Saved Failed!")
            debugger
        }
});
}

Все время, когда я пытаюсь сохранить тип элемента вызова "A", этоникогда не случится. Всегда этот запрос получает значение радиокнопки как "H". Мне нужно передать 2-е значение «А».

Ответы [ 2 ]

2 голосов
/ 21 октября 2019

Вы можете получить правильное значение, используя имя, пожалуйста, удалите дубликат id

$('input[name=optradio]:checked', '#item').val()
0 голосов
/ 21 октября 2019
$('input[name=optradio]:checked').val();

не рекомендуется иметь два идентичных идентификатора на одной странице.


другое решение с использованием имени класса:

<form id="item">
<div class="form-group col-lg-3 col-md-3 col-sm-3 col-sx-3">
     <label for="itemtype">Hotel</label>
     <input type="radio" class="radio itemtype" name="optradio" value="H" checked>
     <label for="itemtype">AirPort</label>
     <input type="radio" class="radio "itemtype" name="optradio" value="A">
</div>
</form>
$('.itemtype:checked').val();

В jqueryЛучший способ отправить данные из формул - использовать методы serialize () или serializeArray () .

Некоторые примеры: serialize-form-data-в-1017 * JSON *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...