【问题标题】:How to get JSP parameter in dynamically? (or create JSP parameter)如何动态获取 JSP 参数? (或创建 JSP 参数)
【发布时间】:2016-03-24 07:05:58
【问题描述】:

我是 JSP 和 ajax 的新手,但同时尝试两者。

我正在制作一个可以通过这些步骤添加或删除的动态标签。

我想将控制器中的参数放在新添加的选项卡的内容区域中。


1.当单击列表中的“加载项目”按钮时,添加一个新选项卡。

$('<li role="presentation">'
    +'<a href="#'+tabId+'" aria-controls="'+tabId+'" role="tab" data-toggle="tab">'
    +$projectName
    +' <span class="closeTab glyphicon glyphicon-remove" aria-hidden="true"></span>'
    +'<input class="hiddenProjectId" type="text" name="projectId" value="'+ pId +'" style="display: none;">'
    +'</a></li>').insertBefore('#liProjectTabAdd');


$('<div role="tabpanel" class="tab-pane fade" id="'+ tabId + '">'
                + '<div class="projectContent">'
                + '<ul class="blockList list-unstyled draggableList"></ul>'
                + '<div class="table-hover addBlock">'
                + 'add block <span id="addBlockGlyp" class="glyphicon glyphicon-plus" aria-hidden="true"></span>'
                + '</div></div>'
                + '</div>').appendTo('.projectTab-content');

2.通过ajax调用控制器(post方法)

$.post("loadProjectContent.do",
    {
        projectId: pId
    }
);

3.控制器调用DAO,获取项目内容。 (内容是正确的,我用打印检查过)

Project project = new Project();

project.setProjectId(Integer.parseInt(request.getParameter("projectId")));

dao.doGetProjectContent(project);

request.setAttribute("projectContent", project.getProjectContent());

那么现在,如何在 JSP 中获取这个 projectContent 呢?

我尝试在附加选项卡时添加 jsp 标记,但它是原始文本。

(喜欢~~~${ projectContent }~~~)

$('<div role="tabpanel" class="tab-pane fade" id="'+ tabId + '">'
    + '<div class="projectContent">'
    + '<ul class="blockList list-unstyled draggableList">'
    + '${ projectContent }'
    + '</ul>'
    + '<div class="table-hover addBlock">'
    + 'add block <span id="addBlockGlyp" class="glyphicon glyphicon-plus" aria-hidden="true"></span>'
    + '</div></div>'
    + '</div>').appendTo('.projectTab-content');

请保存这个新手

【问题讨论】:

    标签: javascript jquery ajax jsp


    【解决方案1】:

    projectContent 写入响应而不是将其添加为请求属性。

    在客户端,解析 AJAX 请求的响应并将其添加到 DOM。

    【讨论】:

    • 抱歉问得这么详细。你的意思是像 response.setHeader() 这样的响应方法?
    • 不,将其写入响应正文。不知道你的projectContent 是什么类型。如果不是字符串,你可能想先将其序列化为字符串或 JSON 对象。
    猜你喜欢
    • 2013-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-19
    • 1970-01-01
    • 2010-12-25
    相关资源
    最近更新 更多