0

我正在尝试使用 html() JQuery 函数将图像插入 td 行(请参阅http://jsfiddle.net/R5q68/)。

问题是图像不显示。当我分析我的 td 时,似乎没有斜线来关闭 img 标签。

我正在使用 symfony2 和资产,这就是为什么我的图片链接是这样的。

<img src="{{ asset('bundles/sciforumversion2/images/design/new/submission/element_up.png') }}"/>
4

3 回答 3

2

您不能使用 jQuery 构建这样的字符串,因为 jQUery 是在客户端执行的,而 symfony2 是在服务器端执行的。

该字符串"{{ asset('bundles/scif..."需要由服务器解释,但在执行 jQuery 时为时已晚。您无法构建资产模板客户端。

你可以做的是插入一些标准的 HTML:

 td.html('<img src=http://dystroy.org/re7210/img/tartare-saumon-creme-salade-harengs-pommes-de-terre-800.jpg">');​

但是如果你用一个简单的 var 构建你的字符串

var image_src = "{{asset('bundles/sciforumversion2/images/design/new/submission/element_up.png')}}";

td.html('<img src="'+image_src+'">');

并且您已经执行了 symfony(即,不在 jsfiddle 中执行此操作),那么它应该可以工作。

于 2012-12-07T16:10:19.427 回答
0

我找到了一个解决方案:我必须使用图像路径创建一个全局 JavaScript 变量:

<script>
    var arrow_down = "{{ asset('bundles/mybundle/images/menu_down.png') }}";
</script>

通过这条路径,我可以设置图像资产:

goes_down_td.html('<img src="'+arrow_down+'"/>');

它已经完成了。享受。

于 2012-12-10T13:48:05.397 回答
-1

检查你的图像路径并试试这个:

     var td = $('#test');
    img_src= '<img src="../bundles/sciforumversion2/images/design/new/submission/element_up.png" id="td_img" />;
    td.innerhtml(img_src);
于 2012-12-07T16:17:35.633 回答