使用jQuery,我怎么能在选择页面加载时获得所选项目的价值? 我能做到这一点平变化等,但无法弄清楚在页面加载的方式。
这里是我的代码:
<select name="symb" id="symb">
<option value="1#10#6">Basic Personal</option>
<option selected="selected" value="2#20#6">Basic Family</option>
<option value="7#90#12">Advanced Personal</option>
<option value="8#120#12">Advanced Family</option>
<option value="9#130#12">Optimum Personal</option>
<option value="10#170#12">Optimum Family</option>
</select>
这是我使用的onchange获取选项值的脚本:
$(document).ready(function() {
$("#symb").change(function() {
var val = $(this).symbCost(0);
})
$.fn.symbCost = function(pos) {
var total = parseInt($("option:selected").val().split('#')[pos]);
return total;
}
});
$(document).ready(function() {
alert($("#symb").val());
});
工作演示 http://jsfiddle.net/YXbDd/3/ 或 http://jsfiddle.net/YXbDd/4/
API: http://api.jquery.com/ready/ > Specify a function to execute when the DOM is fully
加载。
我不知道什么pos
为背景,你的情况,但这应该做的棒。
$("#symb").val().split('#')[0]
其余部分演示和代码,希望有帮助,
码
$(document).ready(function() {
alert("when the page load ==> " + $("#symb").val().split('#')[0]);
$("#symb").change(function() {
var val = $(this).symbCost(0);
})
$.fn.symbCost = function(pos) {
var total = parseInt($("option:selected").val().split('#')[pos]);
alert(total);
return total;
}
});
要么
$(document).ready(function() {
alert("when the page load ==> " + $("#symb option:selected").val().split('#')[0]);
$("#symb").change(function() {
var val = $(this).symbCost(0);
})
$.fn.symbCost = function(pos) {
var total = parseInt($("option:selected").val().split('#')[pos]);
alert(total);
return total;
}
});
$(document).ready(function() {
alert($("#dropdownid").val());
});
最好的解决办法和赛普尔:
$(document).ready(function() {
$.fn.symbCost = function(pos) {
var total = parseInt($(this).val().split('#')[pos]);
return total;
}
$("#symb").change(function() {
var val = $(this).symbCost(0);
}).triggerHandler('change');
});
或这个
$(document).ready(function() {
$.fn.symbCost = function(pos) {
var total = parseInt($(this).val().split('#')[pos]);
return total;
}
$("#symb").change(function() {
var val = $(this).symbCost(0);
}).symbCost(0);
});