狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

JS技巧:window.location.href出問題分析思路

admin
2010年8月17日 23:12 本文熱度 4022

今天在公司給別的同事改bug,其中一個是window.location.href  不起作用


alert(”ok”)
window.location.href = ‘/event/index.php?from_city=’ + site;


上面的alert(”ok”);是不跳轉后用來調試的,頁面反映為現實url的值,但不進行跳轉,分析思路是window.location.href出問題,所以嘗試了常用的調試方式,比如:


判斷是否是在包含頁里面:采用


window.parent.location.href=url; //這個完全否決,因為不是這種情況


采用 window.href location.href document.href均無效


于是跳出判斷函數內部出錯,分析頁面出發該函數的事件,原來是這樣的:


<a href=”javascript:void(0)” onclick=”changeSite(’200′)”>


發現問題:<a href=”javascript:void(0)” ,于是修改為:


<a href=”javascript:changeSite(’200′)”>


于是一切正常!


為什么會發生這個問題呢?我們來看看javascript:void(0) :


JavaScript中void是一個操作符,該操作符指定要計算一個表達式但是不返回值。


void 操作符用法格式如下:
1. javascript:void (expression)
2. javascript:void expression


expression 是一個要計算的 JavaScript 標準的表達式。表達式外側的圓括號是可選的,但是寫上去是一個好習慣。 (實現版本 Navigator 3.0 )


你可以使用 void 操作符指定超級鏈接。表達式會被計算但是不會在當前文檔處裝入任何內容。


下面的代碼創建了一個超級鏈接,當用戶點擊以后不會發生任何事。當用戶點擊鏈接時,void(0) 計算為 0,但在 JavaScript 上沒有任何效果。


<A HREF=”javascript:void(0)”>單擊此處什么也不會發生</A>


下面的代碼創建了一個超級鏈接,用戶單擊時會提交表單。


<A HREF=”javascript:void(document.form.submit())”>
單擊此處提交表單</A>


對于jquery 和yui等前端框架來說他們都有阻止默認事件的方法,在調用window.location.href 等其他重定向方法之前阻止掉連接的默認事件就可以哈


比如


$(’#changesite-panel a.city’).click(function(ev){
ev.preventDefault();
changeSite($(this).attr(’rel’));
});
function changeSite(site){
window.location.href = ‘/event/index.php?from_city=’ + site;
}
})();


該文章在 2010/8/17 23:12:00 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved