2016-08-11 57 views
0

這是一個後續行動,我剛纔的問題:Displaying Selected Values in Drop-Down List With Multple = On顯示選定值在頁面加載(多=上)

提供的幫助,讓我捕捉到選定的值時,他們卻修改我能不知道如何捕獲頁面第一次加載時的初始值(選定)。

function myFunction() { 
     var x = $('select[name=Car]').val() 
     $('#demo').html("You selected: " + x.join(", ")) 
    } 
    $('select[name=Car]').change(function() { 
    myFunction(); 
    }); 
    $('select[name=Car]').load(function() { 
    myFunction(); 
    }); 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<p>Select a new car from the list.</p> 

<select name="Car" multiple="on" size="5"> 
    <option value="Audi">Audi 
    <option value="BMW" selected>BMW 
    <option value="Mercedes">Mercedes 
    <option value="Volvo" selected>Volvo 
</select> 
<br> 
The car is: 
<p id="demo"></p> 

https://jsfiddle.net/2gq824q2/18/

我想的初始值(多個),在此情況下寶馬和奔馳當頁面被加載,然後,如果替代的選擇是由被改變爲被顯示。

回答

1

不要使用.load - 只是簡單地調用頁面加載myFunction(頁面加載後):

$(document).ready(function() { 
    myFunction(); 
}); 

https://jsfiddle.net/2gq824q2/19/

.load是你的頁面裏裝載另一頁。

+0

謝謝你 - 這現在工作完美! – Dogsled

+0

是否可以返回選項的「文本」字段而不是選項的值?例如,我修改了https://jsfiddle.net/2gq824q2/20/以爲值和「文本」設置不同的名稱。 – Dogsled

+0

@Dogsled - 是的 - 獲取'selectedIndex'並從那裏出發: – tymeJV

0

我已經結束了偏離原來的代碼,只是想貢獻回來。

<script> 
function showDropDownValues() { 
var str = ""; 
$("select[name=Car] option:selected").each(function() { 
    str += $(this).text() + ", "; 
    }); 
$('#demo').html("You selected: " + str); 
}; 

$("select[name=Car]").change(function() { 
showDropDownValues(); 
}); 

showDropDownValues(); 
</script> 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<p>Select a new car from the list.</p> 

<select name="Car" multiple="on" size="5"> 
<option value="Audi">Audi Car</option> 
<option value="BMW">BMW Car</option> 
<option value="Mercedes" selected>Mercedes Car</option> 
<option value="Volvo">Volvo Car</option> 
</select> 


The car is: 
<p id="demo"></p> 

https://jsfiddle.net/2gq824q2/25/