¿Cómo puedo volver a inicializar la escritura Uploadify sin añadir botón extra?

StackOverflow https://stackoverflow.com/questions/1925209

  •  20-09-2019
  •  | 
  •  

Pregunta

Te estoy caminando por un processs aquí:

Paso 1
1. Elija un producto de lista desplegable
2. Una forma se rellena con datos
3. Un get ID oculta es el identificador de producto desde el elemento seleccionado
4. Uploadify se inicializa y se recupera el identificador de producto. Se añade un uploadbutton para formar.

Paso 2
1. Seleccione el nuevo producto de la lista desplegable
2. La forma es re-llena con datos
3. El get ID oculta es el nuevo ID de producto desde el punto seleccionado
4. Uploadify se inicializa y se recupera el identificador de producto. Se añade un nuevo uploadbutton para formar.

Ahora estoy atascado con dos botones. No es exactamente lo que quiero.

pude comprobar para ver si se añade el botón y por lo tanto no se vuelve a inicializar el botón, pero entonces el script Uploadify no voy a recuperar el identificador del nuevo producto (que necesito para misceláneos. Cosas).

¿Alguna idea de cómo podría solucionar este pequeño problema?

Esta es mi función uploadify:

function initUploadify()
{ 
    // If button is already added, do not add it again.
    // But this will not retrieve new productID.
    if( jQuery('#brand_btnBrowseLogoQueue').length < 1)
    {
        jQuery('#txtBoxFileName').css({'position':'relative', 'top':'-9px'});
        jQuery("#brand_btnBrowseLogo").uploadify({
            'uploader'       : 'wp-content/plugins/uploadify/uploadify.swf',
            'script'         : 'wp-content/plugins/uploadify/uploadify.php',
            'folder'         : 'brand',
            'fileExt'        : '*.jpg;*.jpeg;*.png',
            'auto'           : true,
            'multi'          : false,
            'method'         : 'POST',
            'height'         : '30',
            'width'          : '100',
            'buttonImg'      : 'path/to/img/btn_browse_101x30px.png',
            'scriptData'     : {'productID':jQuery("#productID").val()},
            onComplete       : function(event, queueID, fileObj, response, data) { 
                //This makes the json response readable                
                data = eval("(" + response + ")");
                //Update logo image
                setLogo(jQuery("#brandID").val(),data.fileName);
            }
        });
    }    
}
¿Fue útil?

Solución

Si sólo tiene que cambiar el productID esto debe hacerlo de acuerdo a la documentación para plugins

//initialize uploadify when first product is selected
if( jQuery('#brand_btnBrowseLogoQueue').length < 1) {
   ...
} else {
    //uploadify already initialized just change the productId
    $("#brand_btnBrowseLogo").uploadifySettings(
        'scriptData',
        {'productID': jQuery("#productID").val()}
    );
}

Otros consejos

¿Usted ha intentado quitar el botón anterior antes de crear una nueva?

if($('#brand_btnBrowseLogoQueue').length != 0)
    $('#brand_btnBrowseLogoQueue').remove();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top