您的位置:首页> 日志> 前端技术 正文
DTOP

全站文章模型搜索

luosi | 2013年04月01日 | 文章搜索

>>收藏本文 已有 0条评论

    全站文章模型按标题、内容、作者、关键字、录入者类别进行搜索;但是利用现有“文章栏目内搜索”、“文章栏目内搜索_普通式”硬是没有实现效果,所以只能修改两个标签从而实现(不知道是不是自己不懂调用而导致的)!

      调用结果如下图:

       

 

    一、修改“文章栏目内搜索”和“文章栏目内搜索_普通式”并另存为其它名称,以免跟默认混淆冲突也方便以后再次使用;下载地址

     二、 新建“网站搜索”标签即可在网站页面调用

	<div class="searchSite">
		<span>网站搜索:</span>
		<a href="javascript:gSearch()" class="searchBtn">搜 索</a>
		<select name="fieldOption" id="fieldOption" size="1">
			<option value="title" selected>标 题</option>
		  <option value="content">内 容</option>
		  <option value="author">作 者</option>
		  <option value="inputer">录入者</option>
		  <option value="keyword">关键字</option>
		</select>
		<input type="text" id="topKeyWord" class="keyWord" onfocus="this.value='';this.style.color='#333';" value="请输入搜索关键字" />
	</div>
<script type="text/javascript">
	if( '@ Request_Keyword'!='' ){ document.getElementById('topKeyWord').value='@ Request_Keyword'; }
	document.getElementById("topKeyWord").onkeydown=function(e){
	 e = e || window.event;
	if(e.keyCode==13) {gSearch();}
}

function gSearch(){
	var keyword = document.getElementById('topKeyWord').value;
	var fieldOptionSel = document.getElementById("fieldOption");
	var fieldOption = fieldOptionSel.options[fieldOptionSel.options.selectedIndex].value;
	if(keyword=='' || keyword=="请输入搜索关键字"){ alert("请输入搜索关键字"); }
	else{
		window.location = '/search.aspx?searchtype=0&Keyword='+encodeURI(keyword) + "&fieldOption=" + fieldOption;
	}
}
</script>
    

   三、修改搜索结果模板页

     (1)由于使用的搜索URL是:/search.aspx?searchtype=0&Keyword='+encodeURI(keyword) + "&fieldOption=" + fieldOption; 因此需修改系统默认的“全站搜索结果页模板”

     (2)将默认模板的调用标签修改为(个人喜欢新增模板、然后在后台修改配置):

<!-- 正文内容 S -->
<ul class="newsList">
  {PE.Label id="PE全站文章按类别搜索" titleLength="80" outputQty="20" fieldValue="@ Request_keyword" fieldName="@ Request_fieldoption" /}
</ul>
<!-- 分页 S -->
<div class="page">
  {PE.Page id="url_动易后台风格" datasource="PE全站文章按类别搜索_普通式" unitname="篇文章" /}
</div>
<!-- 分页 E -->