Нужна помощь в получении названия включенной страницы JSP в JavaScript

У меня есть этот код для страницы.jsp:

<f:view>
<div class="portletBody">
<h:form id="editSectionForm"  onsubmit="return numCheck(document.forms[0].elements['editSectionForm:sectionTable:0:maxEnrollmentInput'].id)">




    <sakai:flowState bean="#{editSectionBean}"/>

    <t:aliasBean alias="#{viewName}" value="editSection">
        <%@ include file="/inc/navMenu.jspf"%>
    </t:aliasBean>

    <h3><h:outputText value="#{msgs.edit_section_page_header}"/></h3>

    <%@ include file="/inc/globalMessages.jspf"%>

    <t:aliasBean alias="#{bean}" value="#{editSectionBean}">
        <%@ include file="/inc/sectionEditor.jspf"%>
    </t:aliasBean>

    <t:div styleClass="act">
        <h:commandButton
            action="#{editSectionBean.update}"
            value="#{msgs.update}"
            styleClass="active"
            onclick="reEnableLimits();" />

        <h:commandButton action="overview" value="#{msgs.cancel}" immediate="true" />
    </t:div>
</h:form>
</div>
</f:view>

и у меня есть некоторый код JavaScript, который выполняется в файле /inc/sectionEditor.jspf. В некоторых из этого кода в файле sectionEdtior мне нужно каким-то образом получить идентификатор этой формы. editSectionForm. Я не могу это жестко закодировать, потому что код /inc/sectionEditor.jspf выполняется на нескольких страницах.

В общем, мне нужен код javascript в /inc/sectionEditor.jspf, чтобы иметь возможность получить идентификатор формы, в которой он находится в данный момент.

то есть:

Если я нахожусь на странице editSectionForm, она скажет мне, что я на этой странице, если я на странице формы addSection, она скажет мне, что я на этой странице.

3 ответа

Я не уверен, что полностью понимаю вопрос. Вы пытаетесь получить текущую страницу, на которой находитесь, как в URL?

http://css-tricks.com/snippets/javascript/get-url-and-url-parts-in-javascript/

Или у вас есть несколько форм на одной странице?

Я вижу, вы уже используете document.forms[0] на вашей странице JSP, поэтому, предполагая, что есть только одна форма, вы можете также использовать ту же конструкцию в разделе сценария ваших "подстраниц", т. е. используя document.forms[0].id даст вам идентификатор формы.

<!DOCTYPE html>
<html>
    <body>
        <form id="editSectionForm">
            <div id="sectionEditor">
                <script type="text/javascript">
                    var formId = document.forms[0].id;
                    console.log(formId);
                </script>
            </div>
        </form>
    </body>
</html>

Я действительно нашел другой способ для моей ситуации. Для любого, кто когда-либо использовал Сакаи, они знают, что это за зверь.

Другие вопросы по тегам