【问题标题】:Loading jsp page using jQuery .load() causes issue with fmt:message使用 jQuery .load() 加载 jsp 页面会导致 fmt:message 出现问题
【发布时间】:2017-06-14 21:07:57
【问题描述】:

我有想要使用 .load() 函数加载的 jsp 页面,在我想要加载的页面中有 fmt、、

这里是ajax调用

$('#some_div').load('/ajax/re/load.jsp', ajaxOptions);

这里是 load.jsp 文件

<%@taglib prefix="sw" uri="/WEB-INF/sw.tld" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@taglib prefix="menu" tagdir="/WEB-INF/
<div id="js-search-box" class="search-box">
    <label>
        <input id="div_id_${param.itemId}" type="text" placeholder="   <fmt:message key="search"/>">
        <i class="fa fa-search"></i>
    </label>
</div>

有没有人遇到过类似的问题? 谢谢

【问题讨论】:

  • 显示一些代码。jquery load() 调用、jsp、过滤器和部署描述符可能很有趣
  • 这是一个简单的 jquery load cal $('#some_element').on('change' , function(){ $('#some_div').load('/path_to_file/some_page.jsp' ); });代码很大,不能分开。
  • 您说涉及过滤器。问题可能就在那里。他们可以改变反应。尝试提取并显示一些相关代码。
  • 过滤器在我之前的评论中,是选择列表。我添加了一些额外的代码。而且我不确定应该添加部署描述符的哪一部分?
  • 在加载的 jsp 中渲染 taglib 可能会出现问题,您可以尝试使用其他一些 taglib 例如 JSTL 或其他来检查此行为吗?

标签: jquery ajax jsp jsp-tags


【解决方案1】:

我知道这是一个老问题,但我今天遇到了同样的问题,这是谷歌上唯一出现的问题,但尚未得到解答。

我的问题(以及问题中的问题)是我忘记为页面设置编码。

&lt;%@page pageEncoding="utf-8" contentType="text/html"%&gt;放在最上面就可以了。

否则,如果这不是您的问题,那么您的捆绑包可能会混淆。使用&lt;fmt:setBundle ...&lt;fmt:setLocale ... 在页面的请求处再次设置它们

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-28
    • 1970-01-01
    • 1970-01-01
    • 2015-03-30
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 1970-01-01
    相关资源
    最近更新 更多