Заполните раскрывающийся список с помощью jquery, используя другой раскрывающийся список

0

Я начинаю с jsp и jquery, но мне нужна ваша помощь, чтобы что-то сделать.

Я извлекаю все сущности Университета из своего портлета, и я заполняю те, которые выбраны так:

<%
List<University> us = UniversityLocalServiceUtil.getUniversitys(0, UniversityLocalServiceUtil.getUniversitysCount());
%>

 <div id="wrap">
<p>University</p>

<div>
    <label><span>Select an university:</span> <select
        name="unis" style="width: 259px">
            <option value="">-- SELECT --</option>
            <%
                for (University u : us) {
            %>
            <option value="<%=String.valueOf(u.getIdUniversity())%>">
                <%=u.getName()%>
            </option>
            <%
                }
            %>
    </select> </label>
</div>

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

 <div id="wraptwo">
 <p>Faculty</p>
    <div>
    <label><span>Select a Faculty:</span> <select
        name="facs" style="width: 259px">
            <option value="">-- SELECT --</option>
        <!-- TODO HERE -->  
    </select> </label>
</div>

Я показываю его со сценарием:

<script>
$("#wraptwo").hide();
$('select[name="unis"]').change(function() {
    var uni = $(this).val();
    if (uni.length >= 1) {
        $("#wraptwo").show();

    } else {
        $("#wraptwo").hide();
    }
});

Моя проблема заключается в том, что мне нужно значение select, называемого "unis", чтобы получить все способности выбранного университета с помощью метода:

University u = UniversityLocalServiceUtil.getUniversity(primary_key_of_the_university);
List<Faculty> fs = u.getFacultys();
Теги:
jsp
forms

2 ответа

1

Попробуйте следующее:

$( "select.unis option:selected").val();


Чтобы передать значение обратно серверу, вы можете использовать вызов ajax. Что-то вроде этого:

var uni = $( "select.unis option:selected").val();

$.ajax({
    url: '/your-url', // path to your url which gets this ajax request
    method: 'get', // or a http method you want to use
    data: {
        uni
    },
    success: function(response) {
        alert(response);
    }
});

Синтаксис может быть неправильным, но суть его.

  • 0
    Спасибо, но как я могу передать это значение в другое выпадающее меню? или к переменной jsp?
  • 0
    JSP находится на стороне сервера, поэтому вам нужно будет передать значение обратно на сервер с помощью вызова ajax или отправки формы.
0

Я думаю, что ур ищет это?

var uni = $(this).val();
$("<option></option").val(uni).text(uni).appendTo($("select.facs"))

Ещё вопросы

Сообщество Overcoder
Наверх
Меню