2
可能重複:
Making sure a web page is not cached, across all browsers爲什麼不刷新Firefox反映javascript代碼更改?
我工作的一個簡單的Dojo組合框(dijit.form.ComboBox)連接到dojo.store.Memory。我正在使用最新的Netbeans和Glassfish設置,以及Firefox 10.我的問題是,當我更改或註釋掉與組合框相關的代碼時,刷新網頁時不會顯示更改。我試過清理/構建,重新運行等,但註釋掉代碼似乎什麼都不做。 Firefox似乎正在運行該頁面的緩存版本,而不是呈現我所做的最新代碼更改。我不希望每次刷新頁面時都要清除瀏覽器緩存。 (我最終希望能夠做的是決定什麼時候autoComplete打開和關閉。)任何想法?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js" type="text/javascript" ></script>
<script type="text/javascript">
dojo.require("dijit.form.ComboBox");
dojo.require("dojo.store.Memory");
var myBox, store;
dojo.ready(function(){makeComboBox();});
function makeComboBox(){
store = new dojo.store.Memory({
data: [
{name:"Alabama", id:"AL"},
{name:"Alaska", id:"AK"},
{name:"American Samoa", id:"AS"},
{name:"Arizona", id:"AZ"},
{name:"Arkansas", id:"AR"},
{name:"Armed Forces Europe", id:"AE"},
{name:"Armed Forces Pacific", id:"AP"},
{name:"Armed Forces the Americas", id:"AA"},
{name:"California", id:"CA"},
{name:"Colorado", id:"CO"},
{name:"Connecticut", id:"CT"},
{name:"Delaware", id:"DE"}
]
});
myBox = new dijit.form.ComboBox({
id: "stateSelect",
name: "state",
//value: "Alabama",
//store: store, <-- the box is still connected to the store,
<--even if I comment it out
searchAttr:"name"
}, "stateSelect");
//myBox.set("autoComplete", "false"); <-- this doesn't work either
}
</script>
<div id="myDiv" >
<input id="stateSelect" >
<p><button onClick="alert(dijit.byId('stateSelect').get('value'))">get value</button></p>
</div>
如果你有緩存的問題,請發送一些頭這樣的Firefox知道,如果,如果是多久緩存您的網頁 – giorgio 2012-02-08 13:20:12
@giorgio我加了頭... – Ted 2012-02-08 13:23:26
對不起,我的意思,送一些標頭firefox,而不是我:)但一個可能的解決方案可能是添加這個:'' – giorgio 2012-02-08 13:29:10