public function testExtraValidateOptionsCouldBeSet() { $this->createForm('test'); $this->rendererOptions->setValidateOptions(array('onsubmit' => false, 'submitHandler' => 'myHandler')); $this->renderer->preRenderForm('test', $this->view); $matches = $this->getMatchesFromInlineScript(); $this->assertStringStartsWith('{"onsubmit": false,"submitHandler": myHandler', $matches['options']); }
/** * @param \Zend\Form\FormInterface $form * @param Options $options * @return string */ protected function buildInlineJavascript(FormInterface $form, Options $options) { $validateOptions = array(); foreach ($options->getValidateOptions() as $key => $value) { $value = is_string($value) ? $value : var_export($value, true); $validateOptions[] = '"' . $key . '": ' . $value; } return sprintf($options->getInitializeTrigger(), sprintf('$(\'form[name="%s"]\').validate({%s"rules":%s,"messages":%s});', $form->getName(), count($validateOptions) > 0 ? implode(',', $validateOptions) . ',' : '', Json::encode($this->rules), Json::encode($this->messages))); }