Во-первых: Я знаю, что должен предоставить свое решение и объяснить, что не работает. Но, к сожалению, я все еще изучаю HTML и PHP, поэтому у меня нет опыта работы с Javascript. Думал, я надеюсь, что кто-то может мне помочь.Вычислить значения из опции выбора с помощью Javascript и/или jQuery
На моем сайте есть форма. В этой форме есть этот код:
<select name="size">
\t <option value="" disabled selected>Size ↓</option>
\t <option value="AAA">AAA (10 €)</option>
\t <option value="BBB">BBB (20 €)</option>
\t <option value="CCC">CCC (30 €)</option>
\t <option value="DDD">DDD (40 €)</option>
</select>
<select name="discount">
\t <option value="" disabled selected>Option ↓</option>
\t <option value="Option1">Option 1 (0 %)</option>
\t <option value="Option2">Option 2 (-5 %)</option>
\t <option value="Option3">Option 3 (-8 %)</option>
</select>
<select name="method_of_payment">
\t <option value="" disabled selected>Method of payment ↓</option>
\t <option value="transfer">Transfer (0 % cashback)</option>
\t <option value="debit">Debit (-3 % cashback)</option>
</select>
Это как магазин. Я хочу предварительно рассчитать конечную цену для пользователя с помощью Javascript. (Я не хочу перезагружать веб-сайт. В противном случае я бы сделал это с PHP.) Я хочу иметь выход вроде: The final price is 18,43 €. You saved 1,57 €
.
Возврат денег из «method_of_payment» должен идти по окончательной цене размера и скидки. Это означает, что для size = BBB
и discount = Option2
и method_of_payment = debit
: 20-(20/100*5)=19 | 19-(19/100*3)=18,43 €
Еще одна проблема в том, что у меня есть такие ценности, как AAA
и Option1
и transfer
в моей базе данных, когда форма получает представлен. Шина, насколько я знаю, Javascript нуждается в значении для вычисления в поле value=""
. Или есть обходной путь?
вы можете попробовать функцию JQuery как $ ('выберите') .on («change», function()) использовать так же, как вы хотите :) –
@RajpalSingh - справедливая точка – Ted
Я не использовал jQuery до сих пор, но я просто «установил» его. Но как я могу получить результат с вашим кодом? – David