2011-08-16 84 views
0

感謝您的幫助!有人可以在IE8中測試我的代碼。我的客戶發送了窗體選擇菜單的屏幕截圖,並且所有文本似乎都在span.menuBg中被複制。我已經在所有版本的IE中進行了廣泛的測試,我無法複製這個問題。我甚至嘗試了Vista ie8和7 ie8。 (客戶端是贏7 IE8)jquery窗體選擇選項菜單在ie8中不起作用。幫幫我?

編輯:更新

$(".form-item:has('select')").each(function() { 
    $(this).addClass('selector'); 
    $(this).find('select').css({opacity: 0}); 
    }); 

    $(".form-item").click(function() { 
    var str = ""; 
    $("select option:selected",this).each(function() { 
      str += $(this).text() + ""; 
     }); 
    $(".menuBg",this).text(str); 
    }); 
    $('.form-item').trigger('click'); 

來源:http://api.jquery.com/selected-selector/ 編輯: 現在沒事了,因爲上有多個.FORM,選擇文本(頁有些工作)變複製到其他菜單。

我只是想每一次選擇的選項插入到跨度我點擊一個

<div class="form-item selector"> 
<span class="menuBg"><!--Insert here--></span> 
    <label for="edit-group-schedule-group-0-field-admin-schedule-status-value"> 
    Set status: 
    </label> 
<select id="edit-group-schedule-group-0-field-admin-schedule-status-value" class="form-select" name="group_schedule_group[0][field_admin_schedule_status][value]" style="opacity: 0;"><option value="">- None -</option><option selected="selected" value="0">Pending</option><option value="1">Pre-approved</option></select> 

感謝您的答覆迄今,但我目前的jQuery的知識是有限的,所以我需要一個多一點幫助。

此外,我的許多頁面包含多個選擇菜單,所以我不能讓它顯示頁面上所有表單中的文本。

我需要的一個例子是: https://www.att.com/olam/passthroughAction.myworld?actionType=TvProductLandingPage&gnLinkId=s1003在他們的下拉菜單上。

+0

你是否想要消失選擇元素,並在用戶選擇元素後用一個跨度中的選定選項替換它?如果我說得對,我可以幫助你。 – Mohsen

+0

你有什麼標記?如果有人選擇某個特定選項,應該如何一步一步發生? –

回答

1

您是否試圖消失select元素,並在用戶選擇該元素之後將其替換爲跨度中的選定選項?如果這是正確的,這裏是一個解決方案(fiddle):

HTML:

<div id="myDiv"> 
    <select class="mySelect"> 
     <option>Option 1</option> 
     <option>Option 2</option> 
     <option>Option 3</option> 
    </select> 
</div> 

的jQuery:

$('.mySelect').change(function(){ 
    var selectedOption = $(this).text(); 
    $('#myDiv').append($('<span/>').text(selectedOption)); 
    $(this).hide(); 
}) 
+0

只需提及.val()應該通常用於選擇爲該選項設置的值。我意識到它默認爲文本,否則.. – Baz1nga

+0

同意,編輯! – Mohsen

1

我想他正試圖加入一個跨度選擇在下拉列表中的東西時, ..因爲你需要綁定一個選擇事件,並在回調函數中做必要的。

這裏是一個相同的小提琴:http://jsfiddle.net/9ek7E/

它改成這樣:

$(".form-select").change(function() { 
    var str = ""; 
    str +=$(this).find("option:selected").text() + " "; 
    $(".menuBg").text(str); 
}) .trigger('change'); 

你需要使用這個關鍵字,也是我簡化了你的代碼中硝基甲苯需要做的每一個選定的因爲它是一個單一的元素。 這裏是一個更新的小提琴:http://jsfiddle.net/9ek7E/1/

+0

跨度已添加,我只需插入選項值文本。讓我看看你的迴應到目前爲止。 – arkjoseph

+0

然後在span上編寫一個選擇器,並將html或文本設置爲$ span.html($ selectedOption.text())或$ span.text($ selectedOption。文字())分別爲 – Baz1nga

+0

我仍然可以想出它,我會更新我的原始問題 – arkjoseph