JQuery или Javascript выполняется при динамической загрузке на событие? - PullRequest
3 голосов
/ 29 октября 2011

У меня есть выпадающий список, и когда я выбираю опцию, он загружает соответствующую таблицу с сервера и отображает ее с помощью jQuery, вместе с таблицей я также отправляю крошечный скрипт jQuery, такой как

        <table id="dataFileTableHeader">
            <thead>
                <tr>
                    <th><strong>Export Type</strong></th>
                    <th><strong>Company</strong></th>
                    <th><strong>File Name</strong></th>
                    <th><strong>Date Modified</strong></th>
                    <th><strong>Total Records</strong></th>
                    <th><strong>File Size</strong></th>
                    <th><strong>Owner</strong></th>
                </tr>
            </thead>
        </table>
        <script>
        $(function(){
            var i = 0;
            $('#dataFileTableHeader th').each(function(index) {
                alert("hello " + (++i));
            });
        });
        </script>

при загрузке я ожидаю, что alert появится 7 раз, но ничего не происходит, я что-то упустил?

Ответы [ 2 ]

2 голосов
/ 29 октября 2011

DEMO

У вас есть пробел после вашего идентификатора

(<table id="dataFileTableHeader "> вместо <table id="dataFileTableHeader">

Так что это правильно

    <table id="dataFileTableHeader">
        <thead>
            <tr>
                <th><strong>Export Type</strong></th>
                <th><strong>Company</strong></th>
                <th><strong>File Name</strong></th>
                <th><strong>Date Modified</strong></th>
                <th><strong>Total Records</strong></th>
                <th><strong>File Size</strong></th>
                <th><strong>Owner</strong></th>
            </tr>
        </thead>
    </table>
    <script>
    $(function(){
        var i = 0;
        $('#dataFileTableHeader th').each(function(index) {
            alert("hello " + (++i));
        });
    });
    </script>

Вы также можете просто использовать индекс в предупреждении, чтобы получить номер. Вам не нужно "я"

1 голос
/ 29 октября 2011

Если ваш контент загружается динамически, сценарий, вероятно, запускается до того, как контент попадет туда.Получите этот код после параметров «успеха» в вашей функции ajax (сложно сказать, не увидев этот код).Имеет смысл?

...