你的函數的內容應該是一系列語句;你的樣本更像是(幾乎)一個對象文字。所以那不會運行。
Intially我會忽略你的幾乎對象字面,因爲我不明白你想要做什麼。相反,按鈕可以通過兩種方法調用函數來設置頁面的URL,即使瀏覽器從當前頁面導航到該URL。第一個將URL傳遞給函數。第二種方法是將對按鈕的引用傳遞給該函數,然後從該引用訪問該按鈕的「值」屬性。另外我已經給出了一種設置URL的方法,但沒有函數。
注意:我不確定這些中的任何一個在網頁上是否明智。如果您想導航到其他網址,請使用<a>
標籤,以便它適用於不含JavaScript的用戶。但無論如何...
function addUrl(newUrl) {
window.location.href = newUrl;
}
function addUrl2(btn) {
window.location.href = btn.value;
}
<input type="button" value="My URL" onclick="addUrl('someURL');">
<input type="button" value="www.google.com" onclick="addUrl2(this);">
<input type="button" value="Something" onclick="window.location.href='www.google.com';">
如果你真正要做的是更新一些數據結構,那麼,也許更多的東西像這樣(假設你的數據對象有一個「服務器」屬性,它的URL對象的數組,就像你似乎試圖做你的原始功能):
var myData = {
"server": [ {"position": "center",
"url": "New_Url" } ]
};
function addUrl(newUrl) {
myData["server"].push{"position":"center",
"url" : newUrl});
}
function updateUrl(index,newUrl) {
myData["server"][index]["url"] = newUrl;
}
你能確認你想要更換哪個網址嗎?我不太理解。你在哪裏「???」你可以用javascript:addUrl()來調用你的函數。您還需要防止按鈕的默認提交。 – Ben 2011-06-02 06:08:24