0

次のコードを含むhtmlファイルがあります。

<div id="pp-photo-wrap">
    <input id="fileupload" type="file" name="files[]">

     //Added this to debug
    <input id="debug" type="button" value="Print Design" onclick="alert(globalVars.selectedDesignId)" />
    <script>
    $j(document).ready(function(){
            $j('#fileupload').fileupload({
                dataType: 'json',
                url: 'productpage/uploadphoto?design='+ globalVars.selectedDesignId,
                done: function (e, data) {
                    enablephotostudio(data);
                }           
            });
    });
    </script>
</div>

そして、私は次の機能を備えた別のJSファイルを持っています.

function clickDesignItem(item_el) {
      ...
      ...
      globalVars.selectedDesignId = item_el.data('design_id');
      ...
      ...
 }

したがって、私の問題は、URL とともに関数にcurrentglobalVars.selectedDesignIdを渡したいということです。fileupload()しかし、ドキュメントがロードされているときに持っていたデザインIDが常に表示されます。

しかし、私が追加した「デザインの印刷」ボタンをクリックすると、天気が呼び出さglobalVars.selectedDesignIdれたときに正しい値が表示されfileupload()、現在の正しいデザイン ID が表示されます。

では、更新された値をリロードdocument.readyまたは渡すにはどうすればよいでしょうか。globalVars.selectedDesignId

ひどく助けが必要です...

4

1 に答える 1

1

Basically users will select a design,

つまり(私は推測しています)clickDesignItem..関数が最初に呼び出され、どこglobalVarsで定義されているか、その後にfileupload関数を呼び出すと、必要に応じて取得 globalVarsされます...

しかし、ここでは、fileupload内部を呼び出していdocument.ready()ます。つまり、ドキュメントの準備が整うとすぐに fileupload が呼び出されるため、globalVarsそれまで設定されていない可能性があります....

于 2013-07-15T04:59:13.497 に答える