我正在尝试li
使用 JQuery 附加来自 php 文件的元素。问题是html代码需要根据键值分别附加到不同的html ID。不幸的是,据我所知append()
,只能在所有元素关闭的情况下附加正确的 html。否则它会自动关闭标签。下面的代码不会像dval
包含代码那样工作,<div><li class="some">Some value</li>
并且append()
会从中产生<div><li class="some">Some value</li></div>
出来。所以我想知道是否还有另一种方法,也许append()
是能够附加html部分以外的功能?
编辑:
这是我的jQuery:
$.getJSON("../ajax.php", function(data)
{
$.each(obj, function(key,val)
{
$.each(obj[key], function(key, dval)
{
if(key == "text")
{
$("#" + key).append(dval);
}
})
});
});
这是我的PHP:
$json_arr = $json_arr."[";
if($counter % 2 == 0)
{
$arr[0] = preg_replace('#<td class="some">(.*?)</td>#', '<li id="1234"><span class="some">$1</span>', $ja[0]);
}
else $ja[0] = preg_replace('#<td class="some">(.*?)</td>#', '<span class="some2">$1</span><div class="somediv"></div></li>', $ja[0]);
$json->id = $closest_key; // Closest key is the ID of an existing li element which is the closest to the current word
$json->text = $ja[0];
$json_arr = $json_arr.'{"id":"'.$json->id.'", "text":"'.addslashes($json->text).'"},';
$json_arr = substr($json_arr,0,-1);
$json_arr = $json_arr."]";
echo(json_encode($json_arr));
现在,如果 counter 是偶数<li id="1234"><span class="some">$1</span>
,则应附加到$closest_key
,如果是奇数,<span class="some2">$1</span><div class="somediv"></div></li>
则应附加。