在客户端重用Zend验证器

时间:2011-01-27 04:35:27

标签: php ajax zend-framework zend-validate

我在another forum找到了这个问题,但没有得到任何答案。我认为这是一个值得问的好问题。我一个字一个地贴在这里。

  你好,我在天空中有一块馅饼   想法,我只是想知道是不是   甚至远程可能,或者我应该   放弃并尝试别的东西。

     

我有一堆Zend_Dojo_Form   形式与一堆自定义   Zend方面的验证器 - 他们   工作正常,表格出错时   值不正确,一切正常   然而,正如你所期待的那样   我也喜欢同样的   验证器在Dojo客户端上工作   形式的一面 - 但没有   完全重新实现它们,   验证者验证。

     

我理解最简单的   级别,Dojo isValid方法没有   知道或关心申请   背后,甚至是它   能够访问中的错误   它必须尝试的应用程序   提交,这不是它的意思   做,但有人试过一个系统   类似的东西:

     
      
  1. 覆盖表单onSubmit以添加我们的代码
  2.   
  3. 测试Dojo isValid()
  4.   
  5. 如果Dojo方面很满意,AJAX会提交表格
  6.   
  7. 如果成功,将返回,我不知道如何,然后   转到相应的页面
  8.   
  9. 如果不成功,那么(这就是我觉得它变得棘手的地方)通过   回到足够的数据来了解哪个领域   错误,错误是什么,以及   然后调用足够的Dojo isValid   内部胆量使表格看起来   喜欢它没有验证?
  10.         

    很抱歉只是想要传播这样的想法   这个,我只想到它可能   如果我们想出来的话真的很有用   一种全局添加自定义的方式   验证我们的表格同时适用于两者   客户端和服务器端,没有   在两者上唯一地实现它们   侧上。

2 个答案:

答案 0 :(得分:3)

嗯,道场:(

使用Jquery:)

看看这个,真棒: Ajaxify Your Zend_Form Validation with jQuery

  

我们将采取的措施   在过去的3个视频和现在一起   包括一些服务器端验证   那将是异步出现的。这个   是一个使用Zend_Form作为一个例子   验证工具通过JSON。

答案 1 :(得分:1)

Zend_Form有一个processAjax()方法,可用于验证表单元素的任何或全部,并返回JSON编码的结果(true或错误列表)。

因此,这可以用于预先验证onsubmit事件处理程序中的全部或部分表单;甚至可以在他们的onchange事件处理器中单独预先验证字段。