【发布时间】:2010-06-21 20:44:49
【问题描述】:
给定 html 片段
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Test JQuery AppendTo</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js">
</script>
</head>
<body>
<div id="Test1">
<p>Just some text</p>
</div>
<form name="FORMPOST" method="post" action="showform.aspx" id="FORMPOST" >
<label for="Test2">Test Label</label>
<input id="Test2" type="checkbox" />
<img src=\"add2.jpg\">
</form>
</body>
</html>
鉴于add2.jpg图片和html代码在同一目录下,为什么图片不显示?请注意,如果我将图像标签节点移动到 div 节点内,它将显示:(
请注意,无论我是在设计时添加 img 标签,还是在表单加载时使用 jQuery.appendTo 函数附加它,都不会出现显示。
【问题讨论】:
-
感谢您发现斜线 :) 作为补充问题,当我在表单加载时使用 jQuery 创建图像标签时出现了这个问题。所以如果你去掉上面的图片标签,在 html
<script type="text/javascript"> $(document).ready(function() { var a = $("< img src=\"add2.jpg\">"); a.appendTo($("#Test2")); }); </script>图像不会显示。 FF 在输入标签之后显示带有 img 标签的生成源 - 但不会渲染图像。 -
您应该尝试附加到表单:
a.appendTo($("#FORMPOST"));。$("#Test2")是一个input元素。 -
谢谢 Daniel 如何在输入元素之后放置它(真实的表单上有很多 - 这是一个精简的测试用例)?
-
好的,我会将输入包含在另一个标签中以控制布局。谢谢大家。