Подтвердить что ты не робот

Использование <strike> или <del> в поле выбора

В любом случае вычеркнуть текст в раскрывающемся списке. Я делаю коммерческое приложение и ищу способ продемонстрировать, что товар продается. Я хотел бы сделать это, показывая старую цену и ударив ее и показывая цену продажи рядом с ней.

Я пробовал что-то вроде этого

<select>
    <option value="1">Small Box 10.99</option>
    <option value="2">Large Box <del>19.99</del> 15.99</option>
</select>
4b9b3361

Ответ 1

Вы можете использовать символ объединения Unicode U + 0336 LONG STROKE OVERLAY:

"19.99".replace(/\d/g, function (digit) { return digit + "\u0336" })

Результат: 1̶9̶.9̶9̶

(Он не выглядит так хорошо, когда вы применяете его к периоду, вот почему я его оставил.)

Вот все цифры с применяемым штрихом, если вы хотите просто скопировать их на серверную сторону script:

0̶1̶2̶3̶4̶5̶6̶7̶8̶9̶

Ответ 2

Это невозможно, если вы используете стандартный HTML select. Любая разметка в теге <option> будет проигнорирована:

<!-- The style in the span tag is completely ignored -->
<option value="1"><span syle="color:red">Small</span> Box 10.99</option>

Ближе всего вы получите желаемую функциональность с помощью HTML select, используя свойство "disabled". Пример:

<select>
    <option />
    <option value="1" disabled="disabled">Small Box 10.99 (Original Price)</option>
    <option value="1">Small Box 6.99 (Sale Price)</option>
</select>

Здесь рабочая скрипка, чтобы продемонстрировать.

Ответ 3

Нет. С стандартными элементами HTML вы не можете иметь такую ​​функциональность. Чтобы решить эту проблему, вы должны создать свой собственный элемент.