如何从下拉列表中有条件地测试所选选项/值

时间:2016-10-25 23:12:37

标签: javascript html shopify

我有一个货币选择器下拉列表,工作正常, 但我现在需要将所选货币与shop.currency进行比较 而且我不知道如何比较它。

下拉代码为:

<label class="currency-picker__wrapper">
  <span class="currency-picker__label">Pick a currency</span>
  <select class="currency-picker" name="currencies" style="display: inline; width: auto; vertical-align: inherit;">
    <option value="GBP" selected="selected">GBP</option>
    <option value="CAD">CAD</option>
    ...
    <option value="JPY">JPY</option>
  </select>
</label>

如果他们选择shop.currency,我现在需要显示一条消息 如果他们选择其他货币,则会收到不同的消息。

我目前使用以下html显示所选货币:

<p>
  Your cart is currently displayed in
  <span class="selected-currency"></span>,
  you will check out using {{ shop.currency }} at today's exchange rate.
</p>

以下javascript代码:

jQuery('[name=currencies]').val(Currency.currentCurrency).change(function() {
  var newCurrency = jQuery(this).val();
  Currency.convertAll(Currency.currentCurrency, newCurrency);
  jQuery('.selected-currency').text(Currency.currentCurrency);

所以我可以将选定的选项输出到<div>,但我不知道如何将其添加到我可以有条件地比较它的形式。

所以我不知道如何构建:

If selectedCurrency = shop.currency
message1
else
message2
endif

...

我尝试使用:

var e = document.getElementById("currency-picker__wrapper");
var selectedCurrency = e.options[e.selectedIndex].text;

但没有成功。 非常感谢您的指导。

1 个答案:

答案 0 :(得分:0)

如果代码段的缺失部分实际上有效,则使用给定的信息,没有id = currency-picker__wrapper的html元素。请将其添加到您的选择列表<select class="currency-picker" id='currency-picker__wrapper'...或任何唯一ID,以便document.getElementById()可以返回该元素。

无法使用给定的信息评论其余内容。希望它有所帮助。