【问题标题】:JSTL inside jQueryjQuery 中的 JSTL
【发布时间】:2013-11-01 04:57:48
【问题描述】:

我正在使用 jQuery 在引导选项卡中动态创建选项卡。这是由事件触发的

为了更清楚地看这里是我在做什么:

$('.tab-content').append('<div class="tab-pane" id="tab_' + id + '">  </div>');

现在在&lt;div&gt; 里面我要写一个很长的HTML 所以我想如果我把所有的代码都写在jQuery 中可能会很乱。所以我决定制作一个外部文件并使用JSTL 导入它并在jQuery代码中编写导入:

$('.tab-content').append('<div class="tab-pane" id="tab_' + id + '"> <c:import url="flt-pis.html"></c:import> </div>');

JSTL 的&lt;c:import url="flt-pis.html"&gt;&lt;/c:import&gt; 好像不行,不知道为什么。还有其他方法吗?

【问题讨论】:

  • 您需要在 servlet 容器/应用服务器上运行您的应用程序才能使 JSTL 工作 - 您正在这样做吗?您可能可以使用 jquery 加载功能,因为该页面似乎在同一个域上。 api.jquery.com/load
  • @Zyga 感谢您的回复。我是 jQuery 的新手,你能清楚地告诉我你想说什么吗?

标签: javascript jquery html twitter-bootstrap jstl


【解决方案1】:

jstl 在服务器端运行。 javascript客户端。这行不通。

您可以在您的 jsp 页面中使用嵌入式 javascript 引用 jstl - 文本输出到服务器端的 js。

【讨论】:

  • 有什么解决办法吗?我只想将其余代码放在 .js 文件之外。
【解决方案2】:

如前所述,您不能在客户端运行 JSTL。

鉴于该页面位于同一个域中(并且听上去确实如此),您可以使用 jQuery“加载”函数将来自外部文件的 HTML 放入新创建的 div 中。

例如,在你执行这个之后

$('.tab-content').append('<div class="tab-pane" id="tab_' + id + '">  </div>');

然后你可以这样做:

$("#tab_"+id).load("flt-pis.html");

【讨论】:

  • 它不起作用。我在添加tab-pane 之后添加了它。它不加载页面。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-29
相关资源
最近更新 更多