我的阿贾克斯:
$("#searchform").on("submit", function () {
//$(this).find(':submit').attr('disabled','disabled');
var data = {
"action": "test"
};
data = $(this).serialize() + "&" + $.param(data);
$.ajax({
type: "POST",
dataType: "json",
url: "search/ajax2.php",
data: data,
success: function (data) {
getData=data;
if(data!=""){
$("inner_div").append("Posted On:"+ data[i].postDate +"<div class='fb-share-button' data-href='https://gloopal.com/search2.php?TID="+ tid +"' data-layout='button'></div>") ;
......................
..........................
}else
{
.........
.......
}
php页面:
打开标签后:
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.3";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
在其他页面中我包括身体标签之后的fb api以及div中的以下内容并且它起作用:不在他的ajax渲染页面中:我该怎么做才能渲染?
<div class="fb-share-button" data-href="https://gloopal.com/search2.php?TID=<?php echo $tid; ?>" data-layout="button">
</div>
答案 0 :(得分:2)
正如https://developers.facebook.com/docs/reference/javascript/FB.XFBML.parse所述,您需要致电FB.XFBML.parse()
。这是在包含sdk时自动完成的。但是,如果此时分区按钮不在HTML代码中,则无法解析。因此,请在更新HTML后调用FB.XFBML.parse()
。