Javascript 如何重新初始化document.ready中驻留的函数中的值?
我有一个html文件,其中包含以下代码Javascript 如何重新初始化document.ready中驻留的函数中的值?,javascript,jquery,Javascript,Jquery,我有一个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)" />
<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>
所以我的问题是我想将当前的globalVars.selectedDesignId
与URL一起传递到fileupload()
函数。但它总是给我它在加载文档时拥有的设计ID
但是如果我点击我添加的“打印设计”按钮来查看天气globalVars。selectedDesignId
在调用fileupload()
时具有正确的值,请给我当前正确的设计ID
那么,如何重新加载document.ready
或将更新后的值传递给globalVars.selectedDesignId
急需帮助…
基本上用户会选择一种设计,
这意味着(我猜)单击设计项
。。函数首先被调用,其中定义了globalVars
,之后调用fileupload函数将得到它应该得到的globalVars
但是在这里,您正在调用
document.ready()
中的fileupload
。这意味着一旦文档准备好,就会调用fileupload,因此您的globalVars
在此之前可能无法设置 设置var后,为什么不在单击设计项(item_el)
中调用fileupload
。但我不明白这是怎么回事。因为它们是两个独立的事件。你能给我解释一下吗。所以我真的理解了javascripts/Jquery:)的世界,当我把它放在clickDesignItem(item_el)中时,fileupload每次都会得到调用,即使没有上传文件?是的,现在我明白了,但我不明白的是,当我把fileupload()函数放在clickDesignItem函数中时,每次用户单击design fileupload()时,也会调用它,而用户不会上载任何内容,不是吗?
function clickDesignItem(item_el) {
...
...
globalVars.selectedDesignId = item_el.data('design_id');
...
...
}