Отправка формы с помощью jQuery / Ajax работает только через раз

Я пытаюсь отправить форму, которая включает загрузку файла через Ajax / jQuery, обработать форму с помощью PHP-скрипта и вернуть результат в div, в котором изначально находилась форма.

Мой текущий код формы:

<section id="content-right">
<form name="uploader" id="uploader" method="POST" enctype="multipart/form-data">
    <input type="hidden" id="MAX_FILE_SIZE" name="MAX_FILE_SIZE" value="10485760" />
    <input type="file" name="fileselect" id="fileselect" />
    <input type="submit" name="submit" id="submit" value="Upload" />
</form>
</section>

И мой текущий скрипт Ajax / jQuery:

<script> 
$(function() {
$('#uploader').submit(function() { 
        $(this).ajaxSubmit({
            type: $(this).attr('method'),
            url: 'upload-song.php',
            success: function(response) {
                $('#content-right').html(response);
                }
            }); 
    return false; 
    });
});

Мой PHP-скрипт «upload-song.php» (детали не имеют значения).

У меня также работает YUI.Pjax для обработки обычных навигационных (href) ссылок и загрузки их в # content-right (если пользователь нажимает что-либо, я хочу, чтобы он загружался в # content-right).

С этой настройкой навигация по обычным ссылкам работает отлично, все загружается в # content-right, но загрузчик работает только каждый раз.

Например, загрузчик загрузит файл upload-song.php в # content-right и отлично все обработает, затем, если я уйду со страницы и попытаюсь загрузить другой элемент, он не будет работать, он просто обновит страницу (если я добавлю action = "uploa, d-song.php" в тег формы, он загрузит upload-song.php как полную страницу, а не в # content-right). После обновления страницы я могу загрузить другой элемент, и он будет отлично работать.

Я думаю, что это связано с тем, как я присоединяю свой Ajax-скрипт к отправке формы (потому что, если я обновляю страницу, она отлично работает), но у меня нет большого опыта работы с этими языками, поэтому я не уверен как это исправить.

Кроме того, если я отключаю YUI.Pjax, он исправляет загрузчик, но, очевидно, ломает мои ссылки, поэтому я ищу обходной путь.

Есть идеи?

Ответы на вопрос(1)

Ваш ответ на вопрос