PHP echo数据 - 附加到html元素
问题描述:
我将一些html元素(或实际上是< rect> svg元素)作为字符串存储在数据库中。PHP echo数据 - 附加到html元素
我有一个PHP是回显数据:
$db = getConnection();
$statement = $db->prepare('SELECT `copy` FROM `draggable`');
$statement->execute();
$result = $statement->fetchAll(PDO::FETCH_ASSOC);
$numberOfElements = count($result);
for ($i = 0; $i < $numberOfElements; $i++) {
echo $result[$i]['copy'];
}
$statement->closeCursor();
回送的结果在浏览器中的反应是:
<rect class="draggable" x="385.53125" y="139" width="50" height="50" style="fill: rgb(0, 128, 0); fill-opacity: 0.2; position: relative; left: -445.46875px; top: 13px;" id="TmOZB"></rect>
<rect class="draggable" x="140.53125" y="276" width="50" height="50" style="fill: rgb(0, 0, 255); fill-opacity: 0.2; position: relative; left: -710.46875px; top: 148px;" id="wQXtQ"></rect>
<rect class="draggable" x="293.53125" y="99" width="50" height="50" style="fill: rgb(255, 0, 0); fill-opacity: 0.2; position: relative; left: -548.46875px; top: -28px;" id="atlxR"></rect>
<rect class="draggable" x="73.53125" y="136" width="50" height="50" style="fill: rgb(0, 128, 0); fill-opacity: 0.2; position: relative; left: -762.46875px; top: 18px;" id="fLuJl"></rect>
现在我想通过Ajax来得到这一结果,并追加它到一个svg元素(编号为#mapa)。这是我到目前为止:
$('#mapa').append($.post('./getElements'));
但它不起作用。我应该改变什么?
答
答
假设你的PHP文件的getElements试试这个
$.post("./getElements", function(data) {
$('#mapa').append(data);
});
答
$.post("./getElements", dataType:"html", function(data) {
$('#mapa').html(data);
// or
$('#mapa').append(data); // (your case)
});
检查请求的URL(./getElements),如果它是有权返回HTML数据。
究竟哪些方法无效? – LorDex 2014-09-11 11:22:00
我希望看到svg元素#mapa中的回显元素,这意味着在屏幕上看到它们,现在不会发生这种情况。 – oneday 2014-09-11 11:25:46