2012-09-10 50 views
1

我有一个表格在表格中创建一个新记录。它是一系列的 文本编辑字段,每个字段都来自同一个数据集的字段。当我点击 按钮时,会运行一个ajax工作流程,将新值提交到 数据库。如何在Return/Enter键上提交Aviarc表单?

有没有一种方法可以使回车/回车做同样的事情 事情,网络表单通常的工作方式?

我希望能够使用的代码是这样的:

<behaviors xmlns="urn:aviarc:widget:com.aviarc.toronto.widget.core.action"> 
    <when> 
     <events> 
      <event event="add_problem_record_button.onClick" /> 

      <!-- how do I ensure this is the Return key? --> 
      <event event="add_problem_record_form.onKeyUp" /> 
     </events> 
     <do> 
      <call-ajax-workflow name="add-problem-record" /> 
     </do> 
    </when> 
</behaviors> 

我的主要问题是如何测试,这是这是 按下回车键?

回答

1

文本编辑控件提供了onEnterKey事件:

<when> 
    <events> 
     <widget-event name="text-edit-1.onEnterKey"/> 
     <widget-event name="submit.onClick"/> 
    </events> 
    <!-- do stuff --> 
</when> 

更一般地,如果你需要找出在事件处理程序键代码,您可以从事件参数的数据集访问:

<when> 
    <events> 
     <!-- all these events should provide a keyCode parameter --> 
     <widget-event name="my-text-edit.onKeyDown"/> 
     <widget-event name="my-text-edit.onKeyUp"/> 
     <widget-event name="my-text-edit.onKeyPress"/> 
    </events> 
    <alert message="{$event-parameters.keyCode}"/> 
</when>