h:commandLink使用出来超链接的时候,直接鼠标点击可以链接到另一个页面B上去,但是鼠标放在链接上面显示出来的是当前页面A#,使得在链接上点右键,选择新窗口中打开页面的时候,打开的还是当前页面,URL为当前页面A#,而不是打开的B页面,难道使用h:commandLink就不能用点右键打开的功能了么?有没有可以使得和h:outputlink一样效果,能右键新窗口中打开的功能呢?

解决方案 »

  1.   

    h:commandLink这是干什么的,html里面的吗,还是struts标签?第一次看到!你说你要实现什么?
      

  2.   

    刚查了一下,你用jsf啊!没有用过,抱歉!
      

  3.   

    1楼 你的JSF 用的熟练吗   顶 我也用的JSF 
      

  4.   

    就是jsf的标签h:commandLink,使用它的action事件,链接到其它页面去,难道使用h:commandLink就不能用点右键选择“打开”或者“另存为”的功能了? 我就想下载附件的时候,不用直接点击下载,而是点链接右键选择“另存为”来下载,结果下载的是当前页面的html,而不是附件。
      

  5.   

    对的,不能右键。你看一下生成的 HTML 源代码就知道了,关键是其中的 onclick 事件在处理东西了。
      

  6.   


    如果是供人下载资源的话,可以直接用 <a href="#{xxx.xx}">xxxxx</a> 就可以了。
      

  7.   

    有个类似 outputLink 吧。
      

  8.   

    h:outputLink没有进入JSF的生命周期,而h:commandLink和h:commandButton都要进入JSF的生命周期.
    用这个h:outputLink就不能执行后台bean的方法了,区别很大啊,根本不行
      

  9.   

    我也用jsf,这个问题是因为h:outputlink控件本身是html标签中的<a>标签加上其它技术实现的,所以并不完全支持<a>标签本身的功能,就像你在用这个控件的时候都是用action属性来跳转的,但是<a>标签却是用href属性来实现的。
      

  10.   


    那你在 h:commandLink 里面跳到一个新的专门用来下载的页面不就可以了。