簡體   English   中英

Href下載並單擊以錨定鏈接

[英]Href to download and onclick to anchor link

也許我正在以錯誤的方式進行操作(我不會太驚訝),或者根本不可能。 我有一些鏈接,單擊這些鏈接可以下載文件。 我也想讓這些鏈接顯示一個燈箱。 我可以輕松地讓他們做一個或另一個,但不能同時做。 鏈接也可以通過asp創建。 我現在擁有的代碼:

<asp:Label id=Label1 EnableViewState="False" runat="server" Text='<%# "<A  id=""launcher"" class=""track"" Href="""&amp;DataBinder.Eval(Container, "DataItem.Url")&amp;""">"&amp;DataBinder.Eval(Container, "DataItem.Name")&amp;"</A>" %>'>
</asp:Label>

<A> ,我嘗試過: onclick=""test();return false;"" ,除了onclientclick之外,有和沒有return false; (也嘗試true )。

我具有的功能:

function test() {
  window.location.href="#feature";
}

問題在於它永遠不會執行onclick事件。 我嘗試在該位置放置一個斷點,當我單擊鏈接時該斷點被擊中,但是我從未看到應顯示的內容。 通過這種方式或其他方式,我正在嘗試做的事情甚至可能嗎?

jsFiddle: http : //jsfiddle.net/hk3Wd/6/ 這與我正在工作的網站的行為略有不同。 在網站上,燈箱顯示但沒有下載。 在這種小提琴中,下載開始但不啟動燈箱。

看來您的“雙”雙引號是問題所在。 這有效

<a href='test.php' onclick='test();return false;'>click me!</a>
<script type='text/javascript'>
function test() {
    window.location.href="#feature";
}
</script>

感謝Diodeus的一些建議和其他在線建議,我已經弄清楚了。

Diodeus是正確的,因為我有兩個id=launcher實例,其中一個是不必要的。 我刪除了。

另一個是Fancybox的工作方式。 它使用href屬性確定用什么填充框架。 在這種情況下,href設置為文件(exe),因此它試圖在燈箱框架中顯示可執行文件,而不是實際下載它。

為了解決這個問題,我將<a>標簽的onclick設置為JS函數。 該功能:

function test() {
   $("a.launcher").trigger("click");
}

在隱藏的div中,我添加了:

<a class="launcher" href="#ads"></a>

基本上,onclick會調用觸發隱藏鏈接的函數,該鏈接會啟動燈箱。

jsFiddle: http : //jsfiddle.net/FjgRw/1/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM