我正在使用Shopify平台,并尝试将标志图像添加到我的货币转换器
以下是我的货币换算代码
<select id="currencies" class="currencies" name="currencies" data-default-shop-currency="{{ shop.currency }}">
{% capture codes %},USD,EUR,GBP,CAD,ARS,AUD,ILS,BBD,BDT,BSD,BHD,BRL,BOB,BND,BGN,MMK,KYD,CLP,CNY,COP,CRC,HRK,CZK,DKK,DOP,XCD,EGP,XPF,FJD,GHS,GTQ,GYD,GEL,HKD,HUF,ISK,INR,IDR,NIS,JMD,JPY,JOD,KZT,KES,KWD,LVL,LTL,MXN,MYR,MUR,MDL,MAD,MNT,MZN,ANG,NZD,NGN,NOK,OMR,PKR,PYG,PEN,PHP,PLN,QAR,RON,RUB,SAR,RSD,SCR,SGD,SYP,ZAR,KRW,LKR,SEK,CHF,TWD,THB,TZS,TTD,TRY,UAH,AED,UYU,VEB,VND,ZMK,{% endcapture %}
{% assign supported_codes = settings.supported_currencies | split: ' ' %}
<option value="{{ shop.currency }}" selected="selected">{{ shop.currency }}</option>
{% for code in supported_codes %}
{% if code != shop.currency and codes contains code %}
<option value="{{ code }}">{{ code }}</option>
{% endif %}
{% endfor %}
</select>
&#13;
这是我做的Java:
var flagsArray = [
"https://cdn.shopify.com/s/files/1/2078/5043/t/59/assets/usa.png?18222330839739856022", // USD,
"https://cdn.shopify.com/s/files/1/2078/5043/t/59/assets/GBP.png?10208443253961150348", // GBP,
"https://cdn.shopify.com/s/files/1/2078/5043/t/59/assets/ILS.png?16971579683524372576" // ILS ...
];
$('#currencies').change(function(){
$('#flags')[0].src = flagsArray[this.value];
});
&#13;
它应该在值改变时改变图片。
(价值MOST为美元,英镑等......不能成为数字,因为这是货币兑换商贬值的方式)
这是我改变货币时应该改变的img:
<img id="flags" src='//cdn.shopify.com/s/files/1/2078/5043/t/59/assets/usa.png?18222330839739856022'>
&#13;
我不知道我做错了什么,如果有人能告诉我那会很棒:) 谢谢:))
答案 0 :(得分:0)
您正在使用数组的值而不是数组的索引。您可以使用.indexOf()
或.findIndex()
来获取与select
元素的当前值匹配的数组的索引,您可以在其中设置value
的{{1}}属性1}}元素
<option>
指向JavaScript处<option value="{{ code }}">{{ code }}</option>
元素处设置的字符串,而不是与应引用的flagsArray
索引对应的索引
flagsArray
或
flagsArray[flags.indexOf(this.value)];
或者,您可以设置与应匹配的数组索引对应的flagsArray[flags.findIndex(function(text){return text === this.value})];
元素的value
<option>
能否使用当前代码
答案 1 :(得分:0)
onchange="$('#flags').attr('src', this.options[this.selectedIndex].value);"
但现在,图像src已更改为VALUE的NAME enter image description here
我如何使这个命令从:
获取src
var flagsArray = [
"https://cdn.shopify.com/s/files/1/2078/5043/t/59/assets/usa.png?18222330839739856022", // USD,
"https://cdn.shopify.com/s/files/1/2078/5043/t/59/assets/GBP.png?10208443253961150348", // GBP,
"https://cdn.shopify.com/s/files/1/2078/5043/t/59/assets/ILS.png?16971579683524372576" // ILS ...
];
感谢