Я проверил ваш сайт, и кажется, что jQuery не используется вашим шаблоном, и вместо того, чтобы включать jQuery только для этой простой функции, я вместо этого написал следующий код на vanilla JS.
function setValue() {
var dropdown = document.querySelectorAll('[data-variant-option-name="Additional Photos"]')[0];
dropdown.value = '0';
Y.one('#'+dropdown.id).simulate('change');
}
window.onload = setValue;
Если вам интересно выяснить, почему ваш код не работает, вот объяснение:
$('#Additional Photos').val("0")
Эта строка кода устанавливает элемент , который имеет и ID из «Дополнительные фотографии» со значением «0».
Ваше поле выбора "Дополнительные фотографии" не имеет ID из "Дополнительные фотографии", вместо этого - оно имеет случайно сгенерированный идентификатор который генерируется каждый раз при обновлении страницы.
Таким образом, причина того, что ваш код не работает, заключается в том, что вы просто нацеливаетесь на неправильный элемент:)
var dropdown = document.querySelectorAll('[data-variant-option-name="Additional Photos"]')[0];
Из-за того, что идентификатор поля выбора не является постоянным, мы нацеливаем поле выбора вместо атрибута «data-variable-option-name». Я выяснил этот константный атрибут, просто проверив selectbox в инструментах ChromDev.
dropdown.value = '0';
Y.one('#'+dropdown.id).simulate('change');
Еще одна вещь, которую следует учитывать, это тот факт, что ваш шаблон использует YUI для обработкиполе выбора. Это означает, что нам нужно вручную вызвать событие «change» для обновления пользовательского интерфейса. Как видно из приведенного выше кода, в первой строке задается значение поля выбора, а во второй указывается YUI для имитации события «изменение» и, следовательно, - обновления пользовательского интерфейса.
Надеюсь, этопомогает!