Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Проблема с jquery upload


Автор: Delegat 8.6.2010, 14:57
Идея следующая: есть таблица с файлами (название, иконка, размер и т.д), ниже кнопка "загрузить файл". После нажатия выбирается файл, загружается и таблица обновляется динамически с помощью jquery.
Реализовано:

Код

echo '<script type="text/javascript">
                        $(document).ready(function(){
                            $(\'#uploadFile\').upload({
                                 name: \'file\',
                                 method: \'post\',
                                 enctype: \'multipart/form-data\',
                                 params: {path: "' . $sPath . '"},
                                 action: \'uploadFile.php\',
                                 onSubmit: function() {
                                 },
                                 onComplete: function(data) {
                                 $("#dfmTable").empty().append(data);
                                }});})
        </script>';


Div с таблицей файлов:

Код

        echo '<div id="dfmTable">';
    echo ShowDFMTable($sPath); 
    echo '</div>';
    echo '<p><a id="uploadFile">Загрузить новый файл</a></p>';


UploadFile.php:

Код

$uploaddir = $_POST['path'] . '/';
    $uploadfile = $uploaddir . basename($_FILES['file']['name']);
    if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {
        //echo $uploaddir . basename($_FILES['file']['name']);
        echo ShowDFMTable($uploaddir);
    } else {
        echo 'Невозможно загрузить файл';
    }


ShowDFMTable($path) - Таблица с файлами.

Скрипт работает правильно, файлы загружаются, но при обновлении теряется структура таблицы и выводится простой текст в строчку. Где подстава??? Если сделать например $("#dfmTable").empty().append('<b>Пример</b>'); выведет нормальный жирный текст.

Причем текст выводится правильный с уже добавленными файлами.

Автор: IgorIV 8.6.2010, 17:18
Подстава в Jquery.
Ты возвращаешь текст, вот оттуда и вырезаются все теги. Попробуй json.
Я думаю так.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)