Почему мои JavaScript не загружаются на мою веб-страницу (используя window.onload)? - PullRequest
1 голос
/ 26 апреля 2020

Я пытаюсь разработать страницу HTML в Adobe Dreamweaver, используя функцию Live Preview (где я просматриваю веб-страницу на локальном сервере), и мой JavaScript привередлив. Я пытаюсь заполнить выпадающее меню массивом JS, и мое предыдущее тестирование сработало, но теперь, когда я пытаюсь запустить скрипт автоматически, либо a) ничего не происходит, либо b) мигает кнопка, указывающая, что он был обновлен, но все еще показывает пустой. Любая помощь будет оценена!

    <script>
    function start() {

        var arrOptions = []; //arrOptionsCollection with HTML tags
        var arrOptionsCollection = [0, 1, 2]; //Values for dropdown

        arrOptions.push("<option value='Select From List...'>Select From List...</option>") //Dropdown Default


        //Adds HTML tags to arrOptionsCollections
        for (var i=0, n = arrOptionsCollection.length; i < n; i++) { =
            arrOptions.push("<option value='" + arrOptionsCollection[i] + "'>" + arrOptionsCollection[i] + "</option>");
        }

        //Transfers arrOptions to actual HTML
        document.getElementById("district-select").innerHTML = arrOptions.join();
    }

    document.getElementById("form-select").onload = function() {start()};

</script>

<body onload="start();">
<form id="form-select">
    <select id="district-select">
        <!--Script Inserts Options Here-->
    </select>

</form>

1 Ответ

1 голос
/ 26 апреля 2020

Интересно, какова роль = в начале вашего for l oop. Просто это не имеет никакого смысла.

Так что вместо:

for (var i=0, n = arrOptionsCollection.length; i < n; i++) { =

Положите:

for (var i=0, n = arrOptionsCollection.length; i < n; i++) {

Вот ваш код :

function start() {

        var arrOptions = []; //arrOptionsCollection with HTML tags
        var arrOptionsCollection = [0, 1, 2]; //Values for dropdown

        arrOptions.push("<option value='Select From List...'>Select From List...</option>") //Dropdown Default


        //Adds HTML tags to arrOptionsCollections
        for (var i=0, n = arrOptionsCollection.length; i < n; i++) {
            arrOptions.push("<option value='" + arrOptionsCollection[i] + "'>" + arrOptionsCollection[i] + "</option>");
        }

        //Transfers arrOptions to actual HTML
        document.getElementById("district-select").innerHTML = arrOptions.join();
    }

    document.getElementById("form-select").onload = function() {start()};
<body onload="start();">
<form id="form-select">
    <select id="district-select">
        <!--Script Inserts Options Here-->
    </select>

</form>

Вот живая демонстрация: https://codepen.io/marchmello/pen/yLYbYjw?editors=1010

...