Невозможно изменить 'scriptData' при использовании плагина Uploadify для JQuery - PullRequest
0 голосов
/ 29 октября 2010

Я использую плагин отсюда: http://www.uploadify.com/

Я пытаюсь обновить / добавить scriptData, но он не работает.Значение всегда остается тем же, что я делаю неправильно?

Вот соответствующий код из моего заголовка ..

<script type="text/javascript">
$(document).ready(function() {
    $('#sampleFile').uploadify({
        'uploader': 'include/uploadify/uploadify.swf',
        'script': 'upload_test.php',
        'scriptData': {'full_name': 'JohnDoe'},
        'fileDataName': 'sampleFile',
        'folder': '/work/avais/bizlists/lists',
        'cancelImg': 'include/uploadify/cancel.png',
        'onAllComplete' : function(){
            $('#sampleFile').uploadifySettings('scriptData', { 'full_name': $('#full_name').val() });
        }
    });
});

</script>

Я также пробовал это ..

<script type="text/javascript">
$(document).ready(function() {
    $('#sampleFile').uploadify({
        'uploader': 'include/uploadify/uploadify.swf',
        'script': 'upload_test.php',
        'scriptData': {'full_name': 'JohnDoe'},
        'fileDataName': 'sampleFile',
        'folder': '/work/avais/bizlists/lists',
        'cancelImg': 'include/uploadify/cancel.png',
        'onAllComplete' : function(){
            $('#sampleFile').uploadifySettings('scriptData', document.getElementById('full_name').value);
        }
    });
});

</script>

Вот мой HTML-код ..

<div id="upload_wrapper">
    <input type="text" id="full_name" name="full_name" /><br />
    <input id="sampleFile" name="sampleFile" type="file" />
    <input type="button" name="upload" value="Upload" onclick="javascript:$('#sampleFile').uploadifyUpload();" />
</div>

Я всегда получаю 'JohnDoe', возвращаемый переменной POST 'full_name'.

1 Ответ

0 голосов
/ 31 октября 2010

Что ж, в итоге я использовал что-то похожее на приведенное ниже .... хотя оно не срабатывает при завершении, на самом деле это лучше, чем до запуска загрузки.

Заголовок так же ..

$(document).ready(function() {
    $('#sampleFile').uploadify({
        'uploader': 'include/uploadify/uploadify.swf',
        'script': 'add_list.php',
        'scriptData': {'mode': '', 'page_title': ''},
        'fileDataName': 'sampleFile',
        'folder': '/work/avais/bizlists/lists',
        'cancelImg': 'include/uploadify/cancel.png',
        'queueID': 'sampleQueue'
    });
    $("#add_list").submit(function(){
        var $upload = $("#sampleFile");
        $upload.uploadifySettings('scriptData', { 'mode': 'error_check' });
        $upload.uploadifySettings('scriptData', { 'page_title': $('#page_title').val() });
        /* Error Check */
        var error_check = checkSubmission();
        if (error_check === false) {
            $upload.uploadifyUpload(); // Triggers the upload to start.
        }
    });
});

.. а соответствующий HTML-код похож на ..

    <form name="add_list" id="add_list" method="post" enctype="multipart/form-data">
        <input type="hidden" name="mode" value="" />
        <input type="text" name="page_title" id="page_title" />
        <input id="sampleFile" name="sampleFile" type="file" />
        <div id="sampleQueue"></div>
        <input type="button" name="upload" value="Add List" onclick="javascript:$('#sampleFile').submit();" />
    </form>

Надеюсь, это поможет кому-то еще! :)

...