Скриплет в JS - PullRequest
       16

Скриплет в JS

0 голосов
/ 22 декабря 2010

У меня есть страница JSP ... я добавляю некоторое содержимое на страницу динамически в зависимости от параметров запроса (массив будет возвращен по запросу), исходя из этого мне нужно создать раскрывающийся список.я хочу сделать это при смене другого выпадающего списка .. поэтому это можно сделать только с помощью javascript, но я не могу использовать скриптлет в js, это действительно возможно ??

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

это будет такого рода

function changeMethod(){
    var templateselected = document.getElementById("templateDropDown");
    var versionDropDown = document.getElementById("versionDropDown");
    if ( templateselected.options.selectedIndex != -1)
    {
        var selected=templateselected[templateselected.options.selectedIndex].value;
        removeChildNodes(versionDropDown);
        <% 
        RetrieveTempSecVersions[] lsListOfFiles = (RetrieveTempSecVersions []) request.getAttribute("templateNames") ;
        for (int i=0 ; i < lsListOfFiles[1].getVersionNumber().length ; i++ ) {
            System.out.println("helllooooo");%>
        versionDropDown.innerHTML+='<OPTION VALUE="'+<%=lsListOfFiles[1].getVersionNumber()[i]%>+'">'+<%=lsListOfFiles[1].getVersionNumber()[i]%>+'</OPTION>';
        <%}%>
    }
}

Ответы [ 2 ]

1 голос
/ 22 декабря 2010

Да вы можете иметь что-то вроде этого

function addCombo() {
    var textb = document.getElementById("txtCombo");
    var combo = document.getElementById("combo");

    var option = document.createElement("option");
    <c:forEach var="state" items="${stateList}" varStatus="status">  
    option.text = "${state}";
    option.value = "${state}";
    try {
        combo.add(option, null); //Standard
    }catch(error) {
        combo.add(option); // IE only
    }
    </c:forEach>
    textb.value = "";
} 

Примечание : я не тестировал этот код, это просто демонстрация

0 голосов
/ 22 декабря 2010

Если javascript встроен или объявлен на той же странице jsp, проблем нет. Что-то вроде:

<script type="text/javascript">
var foo = '${foo}'; // or <%= foo => if you like
</script>

Если он находится в отдельном файле .js, то вы должны передать файл .js через специальный сервлет.

...