【问题标题】:symfony 1.4 resett values from fields after failsymfony 1.4 失败后从字段中重置值
【发布时间】:2013-10-03 17:47:02
【问题描述】:

如何重置我的表单域值?

action:
            $this->form = new $class();
            $this->form->bind($request->getParameter('signin'));
            if ($this->form->isValid())
            {
                $values = $this->form->getValues();
                            $this->redirect('@example');
                    }
            else
            {
                if ($this->form->hasGlobalErrors())
                    $this->errorclass = 'error';
            }
            $this->form->resetFormFields();
            return $this->renderPartial('ajax/example);

我有 2 个字段 email 和 pw:想在它们清空后重置它们

这不起作用:(

$this->form->resetFormFields();

有什么解决办法吗? 谢谢

【问题讨论】:

    标签: forms symfony1 action field reset


    【解决方案1】:

    如果您的表单只有 2 个字段(电子邮件和密码),您可以简单地重新初始化表单。

    else
    {
      if ($this->form->hasGlobalErrors())
        $this->errorclass = 'error';
      $this->form = new $class();
    }
    

    如果您的表单有更多字段(不仅是 email 和 pw)并且您想保留其他字段值,您可以删除 email 和 pw 值并绑定新表单。

    $values = $request->getParameter('signin');
    $this->form->bind($values);
    if ($this->form->isValid())
    {
      $this->redirect('@example');
    }
    else
    {
      if ($this->form->hasGlobalErrors())
        $this->errorclass = 'error';
      $values['pw'] = '';
      $values['email'] = '';
      $this->form = new $class();
      $this->form->bind($values);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-13
      • 1970-01-01
      • 1970-01-01
      • 2012-07-15
      • 2011-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多