从jQuery选项卡式搜索脚本中删除链接ID元素

时间:2011-07-08 15:18:15

标签: php javascript jquery html

我有一个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>

1 个答案:

答案 0 :(得分:0)

如果我已正确理解您的问题,您希望在发送GET请求时仅使用下划线字符后面的部分。

如果是这种情况,您可以在点击事件处理中执行此操作:

type=$(this).attr("id").replace("type_", "");

请注意,您可以简化此操作,因为您不需要使用jQuery来获取id属性:

type=this.id.replace("type_", "");