多个选项选择创建唯一的购物车SKU

时间:2014-11-02 17:10:47

标签: javascript paypal

有没有办法将字符串插入字段,根据从两个下拉菜单中选择的选项,字符串是预先确定的?

这样两个下拉菜单的组合为该产品创建了一个唯一的SKU,并且该字符串被称为SKU,它被插入到item_number变量的输入值中,然后在结账时传递给paypal。

我将使用销售T恤衫的例子。因此组合将是黑/小,黑/大,白/小,和白色/大。每个人都将拥有TEESHIRT-BS,TEESHIRT-BL,TEESHIRT-WS和TE的独特SKU。 TEESHIRT-WL分别为。

这是我选择的HTML选项,但是,我想我需要一些JavaScript来将SKU插入值字段。

<input type="hidden" name="on0" value="colour"><b>select colour</b></><br>
  <select name="os0" >
  <option value="black">black</option> 
  <option value="white">white</option>
</select>
<br>
<br>
<input type="hidden" name="on1" value="size"><b>select size</b></><br>
  <select name="os1" >
  <option value="small">small</option>
  <option value="large">large</option>
</select>

<!-- SKU-->
<input type="hidden" name="item_number" value="">

1 个答案:

答案 0 :(得分:0)

尝试以下方法:

var sizeList = document.getElementById('size');
var colorList = document.getElementById('color');
sizeList.onchange = function() {
    generateSku();
};
colorList.onchange = function() {
    generateSku();
};
function generateSku() {
    var selectedSize = sizeList.options[sizeList.selectedIndex].text;
    var selectedColor = colorList.options[colorList.selectedIndex].text;
    document.getElementById('sku').value = 'TEESHIRT-' + selectedColor.charAt(0).toUpperCase() + selectedSize.charAt(0).toUpperCase();
}
generateSku();
<input type="hidden" name="on0" value="colour"><b>select colour</b></><br>
  <select id="color" name="os0" >
  <option value="black">black</option> 
  <option value="white">white</option>
</select>
<br>
<br>
<input type="hidden" name="on1" value="size"><b>select size</b></><br>
  <select id="size" name="os1" >
  <option value="small">small</option>
  <option value="large">large</option>
</select>

<!-- SKU-->
<input id="sku" name="item_number" value="">