Не удается опубликовать изображение из моей формы с помощью Ajax Updater () из prototype.js - PullRequest
0 голосов
/ 22 марта 2012

Я пытаюсь отправить свою форму, используя новый метод Ajax Updater () файла prototype.js.Когда я проверяю запрос в моем контроллере, я обнаружил, что поле изображения отсутствует.Прочитав несколько статей, я узнал, что с помощью Ajax сложнее сохранять изображения.Вот мой код шаблона: -

<script type = "text/javascript">

    function showWaitingImage( divId ){
        $(divId).innerHTML = "<img src='../spinner.gif'/>Loading...";
    } 
    this.showWaitingImage = showWaitingImage    

    function SubmitStudentinfo() {
        new Ajax.Updater( 'main-form','{{ path('CollageStudentBundle_studentinfo_new') }}', { method: 'post', evalScripts : true, parameters: $('student-form').serialize() , onLoading : showWaitingImage('main-form') } );
    }
    this.SubmitStudentinfo = SubmitStudentinfo

 </script>

 <div id="main-form">
<form {{ form_enctype(form) }} name="student-form" id="student-form" >

{{ form_errors(form) }}

    <table border="1" cellpadding="5" cellspacing="2" width="100%" >
        <tr>
            <td>{{ form_row(form.bloodgroup, { 'attr': {'class': 'input-medium1'} }) }}</td>
            <td>{{ form_row(form.dob, { 'attr': {'class': 'input-medium1'} }) }}</td>
            <td>{{ form_row(form.program_id, { 'attr': {'class': 'input-medium1'} }) }}</td>
            <td>{{ form_row(form.category_id, { 'attr': {'class': 'input-medium1'} }) }}</td>
            <td>{{ form_row(form.picture, { 'attr': {'class': 'input-medium'} }) }}</td>
        </tr>
    </table>


    {{ form_rest(form) }}

    <input type="button" value="Save And Next" onclick="SubmitStudentinfo();"  />
</form>
</div>      

Есть ли способ выложить изображение вместе с формой.Или есть что-то еще, что я должен следовать, чтобы сохранить изображение.

1 Ответ

1 голос
/ 22 марта 2012

AJAX не может загружать файлы.Есть обходные пути, такие как отправка формы из iframe, вот как работает Плагин Ajax Upload .


С HTML5 теперь вы можете использовать FormDataзагружать файлы, но не во всех браузерах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...