显示选定值在页面加载(多=上)
问题描述:
这是一个后续行动,我刚才的问题: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/
我想的初始值(多个),在此情况下宝马和奔驰当页面被加载,然后,如果替代的选择是由被改变为被显示。
答
不要使用.load
- 只是简单地调用页面加载myFunction
(页面加载后):
$(document).ready(function() {
myFunction();
});
https://jsfiddle.net/2gq824q2/19/
.load
是你的页面里装载另一页。
答
我已经结束了偏离原来的代码,只是想贡献回来。
<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>
谢谢你 - 这现在工作完美! – Dogsled
是否可以返回选项的“文本”字段而不是选项的值?例如,我修改了https://jsfiddle.net/2gq824q2/20/以为值和“文本”设置不同的名称。 – Dogsled
@Dogsled - 是的 - 获取'selectedIndex'并从那里出发: – tymeJV