Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更改Select元素后,在Javascript上使用新旧值_Javascript_Jquery - Fatal编程技术网

更改Select元素后,在Javascript上使用新旧值

更改Select元素后,在Javascript上使用新旧值,javascript,jquery,Javascript,Jquery,我尝试通过以下方式将select元素的旧值和新值传递给函数: <select class="browser-default" id="countries" onfocus="this.oldvalue = this.value;" onchange="getCurrency(this);this.oldvalue = this.value;"> <option value="" disabled selected>Choose your country</op

我尝试通过以下方式将select元素的旧值和新值传递给函数:

<select class="browser-default" id="countries" onfocus="this.oldvalue = this.value;" onchange="getCurrency(this);this.oldvalue = this.value;">
   <option value="" disabled selected>Choose your country</option>
   <option value="1">....</option>
   <option value="2">....</option>
</select>

var getCurrency = function(country) {
   currency_value = country.value;
   country_name = country.options[country.selectedIndex].innerHTML;
   old_value = country.oldvalue;
   if ( oldvalue === "") {
    oldvalue = 10;
   }
}

选择你的国家
....
....
var getCurrency=功能(国家/地区){
货币价值=国家价值;
country\u name=country.options[country.selectedIndex].innerHTML;
old_值=country.oldvalue;
如果(旧值==“”){
oldvalue=10;
}
}
但是,它不起作用。它不会将旧值传递给函数。我在Stackoverflow中看到了类似于另一个问题的内容,并尝试复制它。

尝试以下内容


选择你的国家
印度
澳大利亚
美国
var oldValue=$(“#国家”).val();
var新值;
$(“#国家”).变化(职能(){
newValue=$(this.val();
警报(旧值+”:“+新值);
旧值=新值;
});

select元素没有类似于旧值的选项。您可以使用一个全局变量来捕获下拉列表中选择的最后一个值。这是代码应该在“onchange”位置执行的操作。在将当前值传递给函数之前,将其设置为变量
oldvalue
。这似乎有效。你想要实现什么?请记住,第一次使用的值是禁用的值。这是我编辑的问题,还有我检查oldvalue是否为空的额外部分。我尝试创建一个函数,将一种货币的数字更改为另一种货币的数字。这不是货币,而是一种定制货币。这就是为什么我不使用ready函数。