在点击事件 - xpage上触发文件上传控制

时间:2012-07-16 19:57:07

标签: xpages

任何人都可以建议如何在IE中的OnClick或Onfocus事件期间在Xpage中触发文件上传控件?它在Firefox中默认有效。

1 个答案:

答案 0 :(得分:0)

严格地说,当一个人在文件上传控件中选择文件时,在与文件关联后,它就准备上传(请求阶段数据)。本机控件有一些我希望在将来的版本中缺少的东西,但基本上是为了实现“上传”按钮功能,我建议由于以下原因,你应该:

  • 创建一个触发完全刷新的按钮控件(如果关闭fileUpload控件的SSJS getFilename(),则返回true);请注意,它必须是完全刷新!
  • 确保选中“未经验证的流程数据”运行(aka- disableValidators =“true”)

您的按钮应如下所示:     

    <xp:button value="Upload" id="button1">
        <xp:eventHandler event="onclick" submit="true"
        refreshMode="complete" disableValidators="true">
        <xp:this.action><![CDATA[#{javascript:
    getComponent("fileUpload1").getFilename()?true:false}]]></xp:this.action>
        </xp:eventHandler>
    </xp:button>
    

我遇到的所有用户希望一个“上传”按钮。我不是说这是最好的或最优的方式,但它是人们所期待的。我的经验教会我满足用户的期望。他们期望这样做可能是错误的,但至少在这里我们所做的事情是有意义的。

我确信有一种方法可以自动触发完全刷新,可能是使用onComplete事件。我不确定这是否可能是xp:fileUpload控件的onBlur事件,或者是getComponent(“fileUpload1”)。getFilename()值的不同侦听器。也许是一个更有经验的XPage Dev。可以具体回答。

希望这有帮助。