如何设置jquery全局值

时间:2013-09-04 12:37:31

标签: jquery

我选择框作为

<select id='selectboxID'>
  <option value="">select id</option>
  <option value="Actor">Actor</option>
  <option value="Child artist">Child artist</option>
  <option value="">Musician</option>
</select>

我的jquery代码

$(function() {
   var option = 80;
   $("#selectboxID").change(function() { 
       option = 17;

  });
alert(option);
})

我的要求是当我选择任何选项时,选项变量值应为17。请告知如何操作。

5 个答案:

答案 0 :(得分:1)

将全局变量移出函数

var option = 80;
$(function() {   
   $("#selectboxID").change(function() { 
       option = 17;
       alert(option);
  });    
})

答案 1 :(得分:0)

$(function() { })语句表示您正在编写document.ready事件的处理程序。因此,在此块内部声明的所有变量将仅在此块内部可见。你只需要移出你的变量声明:

var option;
$(function() {
   option = 80;
   $("#selectboxID").change(function() { 
       option = 17;

   });
   alert(option);
})

答案 2 :(得分:0)

在更改事件中添加提醒:

$(function() {
   var option = 80;
   $("#selectboxID").change(function() { 
     option = 17;
  }).change();  //<---------change like this
  alert(option);
});

See this in action here

答案 3 :(得分:0)

在函数外部和脚本标记内部声明它

<script type="text/javascript" language="javascript">
     var option=80;//Global Declaration
     $(function() {
        $("#selectboxID").change(function() { 
            option = 17;
         });
         alert(option);
     });
</script>

下次当您调用该函数时,您将获得分配给option变量

的先前值

答案 4 :(得分:0)

您的警报范围和option值检查不正确,请尝试以下操作:

$(function () {

    // Check option value on load
    var option = 80;
    alert(option);

    $("#selectboxID").change(function () {
        option = 17;
        // check the option on dropdown onchange event
        alert(option);
    });
});

FIDDLE DEMO