从函数`change`获取全局变量

时间:2010-11-08 19:26:20

标签: javascript jquery variables

function getSelectData(id) {
var value='';

    // set value to be the current selected value
value = jQuery(id+" option:selected").val();

// change value whenever the box changes
jQuery(id).change(function () {
    value = jQuery(id+" option:selected").val();
});

console.log(value);
return value;

}

感谢@Hogan,他帮助了我,但我仍然无法获得想要的结果,我如何获得变量value,外部函数change,这是示例http://jsfiddle.net/ZvuMh/,并且每当我更改选择框时,值为a。谢谢你的消磨时间

2 个答案:

答案 0 :(得分:1)

除非将其移动为全局变量,否则不能。实际上,“console.log(value)”行只会在调用函数change()之前打印该值。 (当事情发生变化时,会调用change()....但是在getSelectData()返回后很长时间。)

答案 1 :(得分:0)

在此,使用此作为模板来解决您的问题:

http://jsfiddle.net/ZvuMh/3/