防新浪微博即使搜索
废话少说,直接上图,然后贴代码
效果如下图:
前端显示:
<div class="search"> <input url="<%=SPBUrlHelper.Action("Control_Searchs", "MicroBlog")%>" type="text" /><span><a><img src="/Themes/Shared/Styles/images/go.gif" /></a></span> <div class="clear"> </div> <div class="sear_tab"> </div> <!--sear_tab 搜索下拉菜单结束--> <div class="clear"> </div> </div>
后台代码:
public ActionResult Control_Searchs() { string keyword = Request["searchstr"] ?? ""; ViewData["keyword"] = keyword; //搜索相关微博 //SearchResultDataSet<MicroBlogThread> ThreadResults = null; //if (!string.IsNullOrEmpty(keyword)) // ThreadResults = MicroBlogSearchManager.Instance().Search(WebUtils.UrlDecode(keyword), true, 5, 1); List<MicroBlogThread> microBlog = null; if (!string.IsNullOrEmpty(keyword)) microBlog = MicroBlogDataProvider.Instance().GetSpb_MicroBlog_Search(3, keyword); //搜索相关用户 List<User> userlist = null; if (!string.IsNullOrEmpty(keyword)) userlist = UserDataProvider.Instance().GetSpb_User_Search(3, keyword); foreach (var item in userlist) { item.FollowerCount = MicroBlogDataProvider.Instance().GetFollowerCount(item.UserID); } if (!string.IsNullOrEmpty(keyword)) userlist = UserDataProvider.Instance().GetSpb_User_Search(3, keyword); //搜索相关社区 List<ForumSection> forumlist = null; if (!string.IsNullOrEmpty(keyword)) forumlist = ForumDataProvider.Instance().GetSpb_ForumSections_Search(3, keyword); foreach (var item in forumlist) { item.FollowerCount = ForumDataProvider.Instance().GetFollowerCount(item.SectionID); } Dictionary<string, object> result = new Dictionary<string, object>(); result.Add("weibo", microBlog); result.Add("user", userlist); result.Add("forum", forumlist); return PartialView("Controls/Searchs.ascx", result); }
JS代码:
//顶部搜索框 $(".search>input").bind("input propertychange", function () { var v = $(this).val(); if (v != "") { var url = $(this).attr("url"); $(".sear_tab").html("正在加载..."); $(".sear_tab").load(url, { searchstr: v }, function () { }); $(".sear_tab").slideDown("show"); } else { $(".sear_tab").slideUp("show"); } });
search.ascx(动态加载的div的内容):
<%@ Control Language="C#" Inherits="SpaceBuilder.Web.SPBViewUserControl<Dictionary<string, object>>" %> <%if(Model!= null){ List<MicroBlogThread> microBlog = Model["weibo"] as List<MicroBlogThread>; List<User> userlist = Model["user"] as List<User>; List<ForumSection> forumlist = Model["forum"] as List<ForumSection>; %> <h4> 搜<em>"<%=ViewData["keyword"] %>"</em>相关微薄<img src="/Themes/Shared/Styles/images/mid_iocn7.gif" /></h4> <%if (microBlog != null) { foreach (var item in microBlog) {%> <p> <%=item.Body %></p> <% } } %> <div class="sline"> </div> <h4> 搜<em>"<%=ViewData["keyword"] %>"</em>相关用户<img src="/Themes/Shared/Styles/images/mid_iocn7.gif" /></h4> <%if (userlist != null) { foreach (var item in userlist) {%> <dl> <dt> <img src="<%=SiteUrls.Instance().UserAvatarUrl(item.UserID,AvatarSizeTypes.Small,true) %>" width="30" height="30" /></dt> <%--<dd> <a>Kevin<em>"凯"</em>文老师</a><b>粉丝:256565562台湾<img src="/Themes/Shared/Styles/images/mid_iocn6.gif" /></b></dd>--%> <dd> <a><%=item.UserName %></a><b style="width:140px;">粉丝:<%=item.FollowerCount%><%--台湾--%><img src="/Themes/Shared/Styles/images/mid_iocn6.gif" /></b></dd> </dl> <%} } %> <div class="clear"> </div> <div class="sline"> </div> <h4> 搜<em>"<%=ViewData["keyword"] %>"</em>相关社区<img src="/Themes/Shared/Styles/images/mid_iocn7.gif" /></h4> <%if (forumlist != null) { foreach (var item in forumlist) {%> <dl> <dt> <img src="/Themes/Shared/Styles/images/search_img3.gif" width="30" height="30" /></dt> <dd> <a><%=item.SectionName %></a><b style="width:140px;"><%=item.FollowerCount%>关注</b></dd> <%--<dd> <a><em>"凯"</em>尔特人吧</a><b>成员:26</b></dd>--%> </dl> <%} } %> <div class="clear"> </div> <div class="sline"> </div> <h4> 搜<em>"<%=ViewData["keyword"] %>"</em>相关应用<img src="/Themes/Shared/Styles/images/mid_iocn7.gif" /></h4> <%-- <dl> <dt> <img src="/Themes/Shared/Styles/images/search_img4.gif" width="30" height="30" /></dt> <dd> <a><em>"凯"</em>产手机导航家顺</a><b>用户:6626</b></dd> </dl>--%> <%} %>