Редактировать: добавлен CodePenn для включения рабочего примера.
Я выбираю вариант из формы HTML5 и заполняю веб-форму Marketo ее соответствием.
Использование некоторого jQuery для получения значения элемента html и сопоставления его с формой marketo. Как только я выбираю опцию в форме A, она выбирает опцию в форме B
Форма A = обычная форма HTML5
Форма B = веб-форма Marketo
Форма Marketo имеет дополнительные поля, которых нет в HTML, пока вы не выберете опцию. Как только вы выберете опцию, она вставит другие поля в форму. Если я выбираю значение параметра вручную, он работает нормально, но когда скрипт добавляет значение в форму Marketo, он не запускается / не запускается одинаково.
Обычная разметка HTML5 формы:
<form>
<div class="form-group">
<p><strong>I AM INTERESTED IN:</strong></p>
<select id="select-iminterestedin" name="contact_iminterestedin" class="form-control">
<option value="">Select...</option>
<option value="option1">option1</option>
<option value="option2">option2</option>
<option value="option3">option3</option>
</select>
</div>
</form>
Соответствует значению параметра во второй форме:
// populate the select field
$('[name="contact_iminterestedin"]').on('change', function() {
const selected = $(this).val();
const matchValue = $(`#Initial_Product_Requested__c option[value="${ selected }"]`);
matchValue.prop('selected', true);
});
CodePenn демо всей вещи:
https://codepen.io/bruno-gomes/pen/YbYBER?editors=0010
Поэтому, когда я выбираю поле в форме HTML5, он добавляет выбранную опцию в форму Marketo. Однако это не вызывает дополнительное поле, которое будет отображаться в форме Marketo. Но если я выберу поле в форме Marketo вручную, появится это новое поле.
Я хотел бы знать / понять, если конкретный метод, который я использую, не работает так, как я ожидал, или если есть другой подход, возможно, отсутствует что-то связанное с .trigger ('change') или .click ('change') ) ..
К сожалению, я не могу предоставить HTML для формы Marketo. Загружается на сайт через marketo API.
Любые советы или помощь очень ценится!
С уважением.