如何在页面加载时获取下拉列表的值

时间:2012-06-27 08:16:21

标签: jquery drop-down-menu onload

使用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;
    }
});

4 个答案:

答案 0 :(得分:11)

$(document).ready(function() {
    alert($("#symb").val());
});

答案 1 :(得分:2)

工作演示 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;
    }
});​

答案 2 :(得分:1)

$(document).ready(function() {
    alert($("#dropdownid").val());
});

答案 3 :(得分:0)

最佳解决方案和解决方案:

$(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);

});