Pergunta

é possível adicionar uma nova propriedade para um objeto declarado anteriormente? Aqui está um código para esclarecer (com a uploadify jquery plugin):

$('#featuredimageupload').uploadify({
        'uploader' : base_url + 'media/js/uploadify.swf',
        'script': base_url + 'post/uploadflash',
        'multi' : true,
        'queueID' : 'queue',
        'cancelImg' : base_url + '/media/images/cancel.png',
        'fileDesc' : 'Allowed Types: (*.jpg,*.png,*.gif)',
        'fileExt' : '*.jpg;*.JPG;*.gif;*.GIF;*.png;*.PNG',
        'queueSizeLimit' : 9,
        'sizeLimit': 1000000,
        'method' : 'GET',
        'buttonText' : 'Browse',
        'onComplete' : function(event, queue, obj, response, data){
            if(response =='false'){
                alert('Maximum number of images reached!');
                $('#uploader').uploadifyClearQueue();
                return false;
            }
        },
        'onError' : function(event,queue,file,error){
            alert('An error occured. No files were uploaded');
            $('#uploader').uploadifyClearQueue();
        }
    });

então fazer algo parecido

$('#form').submit(function(){
   $('#featuredimageupload').uploadify({scripData : data})
})

Eu vi isso feito com jqgrid

Foi útil?

Solução

Eu acredito que o que você está procurando é a seguinte:

$("#form").submit(function(){
    var $upload = $("#featuredimageupload");
    $upload.uploadifySettings('scriptData', { key : value });
    $upload.uploadifyUpload(); // Triggers the upload to start.
});

Você também pode obter o valor atual, deixando o segundo parâmetro off:

var currentSetting = $upload.uploadifySettings('scriptData');

Outras dicas

Sim, é possível adicionar propriedades (dinâmicos ou não) a um objeto Javascript existente). Você pode apenas usar o operador [] para adicionar uma propriedade dinâmica para um objeto. Por exemplo:

var key = 'foo';
var obj = {param: 'value'};
obj[key] = 'bar';
alert(obj.foo); // bar
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top