2011-07-08 48 views
0

我有一個jQuery選項卡式搜索腳本,它從鏈接定義的PHP文件獲取內容並將其解析爲結果div元素。每個鏈接的ID用於從正確的文件中提取內容,但是在鏈接ID中需要type_才能使製表符工作,然後不會從正確的位置提取內容。我該如何解決這個問題?從jQuery選項卡式搜索腳本中移除鏈接ID元素

這是我目前的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> 

回答

0

如果我理解正確你的問題,你想下劃線後只使用部分發送GET請求時的字符。

如果是這樣的話,你可以在你的點擊事件處理程序做到這一點:

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

請注意,您可以簡化這一點,因爲你不需要使用jQuery獲得id屬性:

type=this.id.replace("type_", ""); 
相關問題