0

ここでプロセスを説明しています。

ステップ 1
1. ドロップダウン リストから製品を選択します
。 2. フォームにデータが入力されます
。 3. 非表示の ID が、選択したアイテムから製品 ID
を取得します。アップロードボタンがフォームに追加されます。

ステップ 2
1. ドロップダウンリストから新しい製品を選択します
。 2. フォームにデータが再入力されます
。 3. 非表示の ID が、選択したアイテムから新しい製品 ID
を取得します。フォームに新しいアップロードボタンが追加されました。

今、私は2つのボタンで立ち往生しています。正確には私が欲しいものではありません。

ボタンが追加されているかどうかを確認して、ボタンを再初期化しないことはできますが、Uploadify スクリプトは新しい製品 ID (その他のものに必要) を取得しません。

この小さな問題を解決する方法はありますか?

これは私のアップロード機能です:

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);
            }
        });
    }    
}
4

2 に答える 2

1

productID変更する必要がある場合は、プラグインのドキュメントに従って変更する必要があります

//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()}
    );
}
于 2009-12-18T10:11:17.850 に答える
0

新しいボタンを作成する前に、前のボタンを削除してみましたか?

if($('#brand_btnBrowseLogoQueue').length != 0)
    $('#brand_btnBrowseLogoQueue').remove();
于 2009-12-18T02:22:27.117 に答える