javascript
  • asp.net
  • html
  • 2012-11-05 108 views 0 likes 
    0

    也许我会这样做错误的方式(我不会太惊讶)或者它可能是不可能的。我点击链接时,下载一个文件。我也想有这些链接显示一个灯箱。我可以很容易地让他们做一个或另一个,但不是两个。这些链接也是通过asp创建的。我现在所拥有的代码:Href下载和onclick锚链接

    <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/。这与我正在处理的网站上的行为略有不同。在网站上,灯箱显示但不下载。在那个小提琴中,下载开始但不是灯箱。

    +0

    是什么输出看起来像你链接? –

    +0

    这是你之后?: 'Text' – Kurt

    +0

    好吧,你是什么意思“我也想有这些链接显示灯箱。”如果你正在下载一个文件? –

    回答

    0

    感谢来自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/

    1

    看来你的“双”双引号是问题。 This works

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