2013-02-03 144 views
2

是否有可能使用收穫jquery而不必使用默認的<select><option>abc</option></select>標記?收穫jquery-選擇沒有選擇?

我想無論是有這種轉變爲一個負責任的收穫一樣選擇域代碼:

<!-- Language Switcher --> 
<ul> 
    <li><a href="abc.com/lang/german">Switch language to german</a></li> 
    <li><a href="abc.com/lang/english">Switch language to english</a></li> 
</ul> 

或者它也將是確定我寫html代碼一樣,成品輸出從選擇標籤(包含ul,li的div和類chzn-drop,chzn-results,...)中選擇收穫。我已經嘗試過了,但我不知道如何開始選擇JavaScript來使用該塊,而不是嘗試改變任何東西。

原因是:我希望語言切換器選擇被搜索引擎優化(有鏈接作爲鏈接,而不是我閱讀的一個選項的某些數據屬性,並且只對javascript做出反應),同時保持良好外觀和功能的選擇選擇。

編輯
看來,這是不可能的,而無需修改插件

+0

冒着暴露無知的風險,什麼是「選擇選擇」? –

+0

是的,它應該是jquery選擇,我現在改變了標題,午夜後工作的價格 – Allisone

+0

你需要做兩件事之一;執行轉換或創建您自己的插件版本。您可以隨時在網頁上的其他地方複製鏈接,以實現SEO目的。 –

回答

0

你可以使用自己的包裝或插件,使其可以接受的choocen 例子,如:

<ul id="TesT"> 
    <li><a href="abc.com/lang/german">Switch language to german</a></li> 
    <li><a href="abc.com/lang/english">Switch language to english</a></li> 
</ul> 

小腳本:

function modi(selector){ 
    $(selector).each(function(){ 
    var html =""; 
    $('li',this).each(function(){ 
     html +='<option value="'+$('a',this).attr('href')+'">'+$('a',this).html()+'</option>'; 
    }); 
    $(this).replaceWith('<select>'+html+'</select>').chosen(); 
    }); 
} 

並且將其命名爲:

modi('#TesT'); 

目前我的腳本替換了舊的原始標記,但您也可以使用隱藏和添加新元素。

+0

但是最後我再次得到一個選擇,我不想 – Allisone

+0

然後你需要編寫新的插件或修改choocen來滿足你的需求 – Aivar

+0

Hooray爲'modi (選擇器)'部分。 :) –