2010-11-28 191 views
1

之間調用JavaScript函數我試圖在以下方式在我的查詢字符串之間調用一個javascript函數,但它不工作......任何人都可以指出我是否正確執行它或不? 我的動機是從我的查詢字符串中的一個參數(appName)中刪除特殊字符(#,&等)............ plz help !!在URL查詢字符串

<a target="_self" onmouseout="hideTooltip()" onmouseover="showTooltip(event,'click on the name for additional details');return false" class="tip" href='<%=request.getContextPath()%>/index.jsp?page=myhome&type=details&appName=javascript:escape('<%=adMetricsVO.getApplicationName()%>')&Id=<%=bean.getID()%>'><%= bean.getName()%></a> 
+0

您不能在`href`屬性中運行JavaScript - 它不是JavaScript感知屬性。 – cdhowie 2010-11-28 19:53:01

回答

1

這不會起作用,因爲Javascript解釋器不會涉及元素的普通「單擊」行爲。換句話說,Javascript永遠不會去看到那「href」的價值。

爲了完成這項工作,您可以在服務器上轉義應用程序名稱,或者將URL放在單獨的一段Javascript中,並將其連接到窗口「加載」事件或類似的東西。

或者,您可以通過JavaScript處理程序來處理「點擊」,該處理程序會生成URL並重新加載頁面。

2

這是非常錯誤的。 (並且不可能像你試圖做的那樣)

你應該在服務器上跳過getApplicationName()
你需要對它進行URL編碼,然後對它進行屬性編碼。