【发布时间】:2016-01-07 15:31:26
【问题描述】:
我有这个:
<select id="prio" class="w60">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
如果我选择另一个值,则会调用 onchange = function():
var prio = document.getElementById('prio');
var string1 = "Hello";
var string2 = "";
prio.onchange = function ()
{
prioIndex = prio.options[prio.selectedIndex].text;
switch (prioIndex)
{
case '1': prioIndex = " my Friend";
break;
case '2': prioIndex = " my Sister and Brother";
break;
case '3': prioIndex = " my Mom and Dad";
break;
}
alert(prioIndex);
string2 = prioIndex;
}
alert(string2);
函数内的警报工作正常,但他不会分配新的字符串。
alert(string2) 显示 string2(未定义)。
我想在函数外使用string2。但我不能,因为它从未被分配。但我不知道为什么。
可以说,我想在另一个 onchange 函数中使用string2...
var string3;
news.onchange = function ()
{
string3 = string2.concat(' how are you');
alert(string3);
}
并将其分配给string3。如果我想在 onchange 函数之外使用string3,那就是undefined。
【问题讨论】:
标签: javascript variables variable-assignment onchange jquery-selectbox