JQuery можно имитировать «событие onchange» окна выбора, но для UL / OL - PullRequest
1 голос
/ 17 ноября 2011

Сегодня у меня есть сценарий, который я унаследовал и не могу удалить, чтобы идти с чем-то еще, по крайней мере, на данный момент.Что обычно было бы хорошо, однако автор оригинального сценария «упаковал» его, так что код далек от чтения.С учетом того, что сценарию не хватает функциональности, теперь я должен поставить его, несмотря на то, что я протестую против того, что с базовой кодовой базой это невозможно.Поэтому я не пытаюсь найти обходные пути.Этот момент работает вокруг понятия, основанного на нажатии кнопки, которую я не могу изменить.

Что кнопка делает, так это открывает диалоговое окно файла, где пользователь выбирает файл, и после выбора он добавляется в неупорядоченный список (UL).Пытаясь думать о взломах, я пришел к мысли, что, если просто как элемент формы «выбрать», вы можете выполнить триггер события onChange, чтобы, когда пользователь что-то там выбирал.Что-то делает что-то.Поэтому мне интересно, смогу ли я достичь чего-то подобного.Что-то, что в некотором смысле будет слушать DOM, когда изменится этот конкретный элемент и будет ли он добавлен для запуска одной из проверок почты, которые я хочу выполнить.Я не знаю, как это найти.Поэтому мне интересно, может ли кто-нибудь здесь что-то понять для меня.

1 Ответ

3 голосов
/ 17 ноября 2011

Попробуйте использовать $. DoTimeout () , чтобы «прослушать» изменения в </ul> и запустить функцию, если </li> будет добавлено следующим образом:

// The List //
<ul class="theList">
    <li>Some Value</li>
    <li>Some Value</li>
    <li>Some Value</li>
</ul>    

// Set Initial </li> Count //
var li = $('.theList li').length;

$('.theList').doTimeout('check', 250, function(){
    if ($('.theList li').length > li)
    {
        // ...Run Function Here... //

        // Update Total </li> Elements //
        li = $('.theList li').length;
    }

    // Return True to Continue Polling //
    return true;
});

Надеюсь, это поможет!

...