Heim  >  Artikel  >  Backend-Entwicklung  >  防新浪微博评说功能实现

防新浪微博评说功能实现

WBOY
WBOYOriginal
2016-06-13 13:01:15812Durchsuche

防新浪微博评论功能实现
现在,我有这样一要需求。就是防新浪微博评论的数据实现。ajax实现
点击评论,传送一个ID过去,得到所有回复数据.然后显示在下面。这个要怎么实现呢?
而且还我还要跟他一样,点评论后马上显示?
通过AJAX实现。
------解决方案--------------------
你都知道传ID过去用ajax实现了,还不会写嘛
------解决方案--------------------
传递过去后 ajax 返回json js 读取js 将数据呈现到浏览器
------解决方案--------------------

$("#RESUME_WORK_save").bind("click",function(){//例如触发条件是RESUME_WORK_save的点击 也可以根据滚动条高度发送ajax请求调用数据等<br />
	var work_data="data=jsondate&.....";//post数据提交<br />
		$.ajax({<br />
			type:"POST",<br />
			url:"xxx.php",//需要提交页面 <br />
			data:work_data,<br />
			beforeSend:function(){<br />
				$(this).attr("disabled",true).val("请求中");<br />
			},<br />
			success:function(data){<br />
				var jsonresult=JSON.parse(data);//这里可以对拿回的数据进行组装成div,将该div插入或者任意其他处理方式将他放到div容器中。例如id worklist的容器 可以看看jquery帮助文档各种插入方式都有。<br />
				var divbox="<div>xxx</div>";<br />
				/*<br />
				内部插入<br />
				append(content <br><font color='#FF8000'>------解决方案--------------------</font><br> fn)  <br />
				appendTo(content) <br />
				prepend(content <br><font color='#FF8000'>------解决方案--------------------</font><br> fn) <br />
				prependTo(content) <br />
				外部插入<br />
				after(content <br><font color='#FF8000'>------解决方案--------------------</font><br> fn) <br />
				before(content <br><font color='#FF8000'>------解决方案--------------------</font><br> fn) <br />
				insertAfter(content) <br />
				insertBefore(content) <br />
				*/<br />
					$("#worklist").after(divbox);//worklist之后插入divbox 可以实现动态载入。<br />
			}<br />
		});<br />
});

------解决方案--------------------
LZ的就是基本代码的实现了
还有LZ在显示评论列表的时候可以有两个方式
一个就是在请求服务器端的时候,在服务器端将评论列表的html直接拼接好输出
另一个就是在服务器端仅仅返回相关评论的json数据,在客户端获取或解析json拼接html再追到加你所需要的html里面
------解决方案--------------------
这个功能已经完成过一次了,其实就是PHP返回JSON,然后用jquery插入HTML代码append appendTo,但是加载的时候要做好控制,注意不要造成客户端重复加载。
------解决方案--------------------
你这个要先转换成JSON,代码:
<br />
var dt = '{"data":[{"commentid":"1","weiboid":"47","uid":"100001","content":"34535","datetime":"1350355452","syncid":"0","synctype":"0","replayuid":"0","replaycid":"0"},{"commentid":"2","weiboid":"47","uid":"100000","content":"34535","datetime":"1350355456","syncid":"0","synctype":"0","replayuid":"0","replaycid":"0"},{"commentid":"3","weiboid":"47","uid":"10016","content":"34535","datetime":"1350355471","syncid":"0","synctype":"0","replayuid":"0","replaycid":"0"},{"commentid":"37","weiboid":"47","uid":"100000","content":"656321","datetime":"1350355517","syncid":"0","synctype":"0","replayuid":"0","replaycid":"0"}],"total_rows":4}';<br />
	var json = eval('(' + dt + ')'); <br />
	$(json.data).each(function(i, item){<br />
		alert(item.commentid)<br />
	})<br />


------解决方案--------------------

引用:
像这样的{"data":[{"commentid":"231","weiboid":"292","uid":"10000","content":"KSLDFJSKL;FKJSL","datetime":"1350355517","syncid":"0","synctype":"0","replayuid":"0","replaycid":"0"}],"total_rows……

jq有操作json的方法,你研究下吧,这个很基础
------解决方案--------------------
问题已经帮你解决了
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel: LMAP php不实施 Nächster Artikel: 发一个关于购物车的有关问题