【问题标题】:Simple div-layout rendered different as coded in jspx简单的 div 布局呈现不同的 jspx 编码
【发布时间】:2011-04-06 18:26:32
【问题描述】:

几天来,我一直试图弄清楚我的布局在浏览器中呈现时发生了什么。

我的环境:

  • SpringSource 工具套件版本:2.6.0.RELEASE
  • 瓷砖
  • jspx + CSS
  • JavaScript InfoVis 工具包

我的问题:

我必须从一个更大的项目中制作一个非常简单的部分,我有一个小表单来进行选择,它会触发服务器请求并获取一个 json 对象以从 infovis 工具包 (javascript) 中绘制一个空间树,即绘制在表单下方,然后在选择树的一个节点后,它应该显示一个表格,其中包含我通过 Ajax 请求获得的一些信息。所有这些复杂的编码就像一个魅力,问题出现在显示它的时候。所以我想做这样的事情:

<div id="1>
   <form>
</div>
<div id="2">
   <div id="infovis"></div>
   <div id="log"></div>
</div>
<div id="2">
   <table id="someID"></table>
</div>

css 包含一些在纯 HTML 中可以正常工作的格式

但是在部署和渲染时我得到了类似的东西:

<div id="1>
   <form>
</div>
<div id="2">
  <div id="infovis">
     <div id="log"></div>
     <div id="2">
        <table id="someID"></table>
     </div>
     <div id="footer"></div> //this is injected cause the tiles specification
  </div>     
</div>

这个或任何其他变体。

有没有人遇到过类似的问题或者知道是什么原因造成的? spring ,tiles,脚本,jspx 实现?

我不能过多地处理其他代码或配置,因为我们处于非常先进的阶段,我不想影响其他领域。

注意:我以前更多地使用 c/c++ 和实时的东西,所以我对 CSS、jsp 等不是很流利。我刚开始在真正的 Web 应用程序中工作。

【问题讨论】:

  • 我觉得你的问题要求太具体了。

标签: javascript spring html tiles jspx


【解决方案1】:

好的,看来问题出在 JSPX 解析(甚至是普通的 jsp)上

不知何故,如果&lt;div&gt;&lt;/div&gt; 里面没有“文本”,它会为所有&lt;div&gt;(可能还有其他标签)取出&lt;/div&gt;,并且由于jspx 需要以某种方式关闭&lt;/div&gt;在末尾追加缺失的部分

有点像

<div id="1"></div>
<div id="2"></div>

前往:

<div id="1">
    <div id="2">

然后你在浏览器中得到的是:

<div id="1">
    <div id="2">
    </div>
</div>

为避免这种情况,您需要将&lt;jsp:text&gt;&lt;/jsp:text&gt; 放在必需的&lt;div&gt; 之后,就像您在里面有文本一样,因此您首先会得到已编码的内容。

好吧,这就是我认为它的工作方式,也许我完全错了,但不知何故它对我有用,并且当它开始出现在系统的其他部分时,它将为我们节省痛苦的时间。你知道解决这个问题的其他方法吗?或者发生这种情况的真正原因?

【讨论】:

    【解决方案2】:

    id 属性应该有一个唯一的值(最好是数字和字母的组合)。 id 元素具有唯一值应该可以解决您的问题。

    【讨论】:

      【解决方案3】:

      .jspx 文件中不能有空的 HTML 块元素:

      代替:

      <div id="log"></div>
      

      试试

      <div id="log">&#160;</div>
      

      【讨论】:

        猜你喜欢
        • 2020-08-15
        • 2011-09-27
        • 1970-01-01
        • 2012-12-12
        • 1970-01-01
        • 2014-09-07
        • 1970-01-01
        • 2016-11-16
        • 2017-07-16
        相关资源
        最近更新 更多