JSF / JSP - Вопрос для начинающих - PullRequest
0 голосов
/ 22 сентября 2011

Я недавно окунул свои пальцы в JBoss Seam и, естественно, у него есть масса знаний, но до сих пор у меня был практический подход с просмотром кода и попыткой написать собственные приложения для шва, которые я ищу для понимания ниже:

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

    <h:commandButton value="Save" type="button" onclick="return userAction(this);" title="User Actions">
            <f:param value="#{user.codePk}" name="userCode"/>
            <h:inputHidden value="#{user.codePk}" id="code"/>
        </h:commandButton>

, которая вызывает функцию javascriptэто открывает окно для отображения запасов на складе:

   var pk = document.getElementById("product:code").value;
   window.open('<%=basePath1%>jsp/stockOnHand.faces?Code='+pk,"abcd");

Я знаю, что stockOnHand.faces - это просто stockOnHand.jsp, и что в stockOnHand.jsp есть таблица, в которой имеется на складеданный товар показан во всех магазинах.

Я не понимаю, как работает деталь из ? Code = '+ pk, "abcd" .Это похоже на то, как это делается в Java, где вы можете передавать параметры в функцию, соответствующую ее сигнатуре, например

foo(int v, string s);

Надеюсь, это не слишком двусмысленно.

1 Ответ

3 голосов
/ 22 сентября 2011

Это просто конкатенация строк.Функция JS window.open имеет следующую подпись:

open (URL, windowName[, windowFeatures])

Первый аргумент URL в вашем примере - это конкатенация данной строки и переменной pk.Второй аргумент windowName это abcd.

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