私はこの関数を作ります:
function price(val){
var test = $('span.hikashop_product_price_full:visible').text();
var test2 = test.split('%');
var test3 = test2[1].split(' ');
var test4 = test3[0].replace(',','.');
var eyy = parseFloat(test4) *val/100 + parseFloat(test4);
eyy = eyy.toFixed(2)
var ett = test.replace(test3[0]+' '+test3[1],'<span class=\"hikashop_product_price hikashop_product_price_0 hikashop_product_price_with_discount\">'+eyy+' '+test3[1]+'</span>');
$('span.hikashop_product_price_full:visible').html(ett);
}
動的<span>
タグから値を取得します(他のフィールドによって変化するため、動的であると言います)。私はフィールドを持っています
<select id="custome_vara" name="data[item][custome_vara]" size="1" onchange="price(this.value);">
<option value="" id="custome_vara_" selected="selected">alb</option>
<option value="20" id="custome_vara_20">stejar auriu</option>
<option value="30" id="custome_vara_30">moreiche</option>
</select>
呼び出すたびにトリガーされます。%
初期価格に追加するには、1回だけ実行する必要があります。
スパンはこんな感じ
<span class="hikashop_product_discount">-10%</span><span class="hikashop_product_price hikashop_product_price_0 hikashop_product_price_with_discount">51,34 €</span> </span>
質問:
関数price()を呼び出すと、この関数で選択が実行され、選択がintになります。選択を静的にする方法とフィールドselect/optionは、この静的選択にオプションごとに1パーセントだけ追加します。
私はあなたが理解したことを望みます。
英語でごめんなさい。
ありがとう。