我有一个jQuery选项卡搜索脚本,它从链接定义的PHP文件中获取内容,并将其解析为结果div元素。每个链接的ID用于从正确的文件中提取内容,但是选项卡需要在链接ID中使用type_才能工作,这样就不会从正确的位置提取内容。如何解决这个问题?
这是我当前的jQuery代码:$(document).ready(function(){
$("[id^=type_]").click(function(){
type=$(this).attr("id");
$("[id^=type_]").removeClass("selected");
$("#"+type).addClass("selected");
return false;
});
$("#type_tab1").click();
$("#query").keyup(function(){
var query=$(this).val();
var yt_url=''+type+'.php?q='+query;
if(query==''){
window.location.hash='';
document.title='My Search Script';
}
$.ajax({
type:"GET",
url:yt_url,
dataType:"html",
success:function(results){
$('#results').html(results);
}
});
});
});
这是我的HTML代码:
<ul>
<li><a id="type_tab1" href="javascript:void(null);">Tab1</a></li>
<li><a id="type_tab2" href="javascript:void(null);">Tab2</a></li>
<li><a id="type_tab3" href="javascript:void(null);">Tab3</a></li>
</ul>
如果我正确理解了您的问题,那么当您发送GET请求时,您希望仅使用下划线字符之后的部分。
如果是这种情况,您可以在单击事件处理程序中执行此操作:
type=$(this).attr("id").replace("type_", "");
注意,您可以简化它,因为您不需要使用jQuery来获取id
属性:
type=this.id.replace("type_", "");