Я выбрал вариант:JavaScript скопировать значение OPTGROUP на другой вход
<form>
<select name="sel" id="sel" onchange="run()">
<option selected disabled>Wybierz...</option>
<optgroup id="user" value="user" label="user">
<option value="1">michal</option>
<option value="2">mateusz</option>
</optgroup>
<optgroup id="warehouse" value="warehouse" label="warehouse">
<option value="1">kosz</option>
<option value="2">zaginione</option>
</optgroup>
</select>
</form>
<input type="text" name="copy" id="copy"></input>
И сценарий, чтобы добавить текст во входном тексте:
function run() {
if(document.getElementById("user").label == 'user'){
document.getElementById("copy").value = "user";
} else if (document.getElementById("warehouse").label == 'warehouse') {
document.getElementById("copy").value = "warehouse";
}
}
Когда пользователь выбрал вариант с первой optgroup
(«пользователь») затем в текстовом скрипте ввода добавьте имя «пользователь». Когда пользователь выбирает записи со второго optgroup
, тогда сценарий меняет текст во входном тексте на «склад». Но в моем скрипте ничего не добавляется к входному тексту. demo
у вас есть использовать вариант OnLoad для Js .https:. //jsfiddle.net/7yv12vm0/2/ но ваше сравнение некорректно 'document.getElementById ("пользователь") label' всегда пользователь –
Вы хотите значение ввода должно быть ** 'michal' ** или **' mateusz' ** или просто сказать ** 'user' **? Эта часть неясна. –