Zend Framework: Zend_Form не включает атрибут 'name' в тег формы - PullRequest
1 голос
/ 13 июля 2011

У меня есть следующий класс для формы:

class Application_Form_ContactForm extends Zend_Form
{
    public function init()
    {
      $this->setName('contact_us');
     /* 
       I have also used follwing statements (one by one) to set name attribute 
       // $this->setAttrib('name', 'myForm-name');
       // $this->setAttribs(array('name' => 'frm', 'id' => 'frmlogin')); 
     */
    }
}

Когда я запускаю эту форму, я получаю следующий HTML-код:

<form id="contact_us" enctype="application/x-www-form-urlencoded" action="" method="post"><dl class="zend_form">

Вышеупомянутыеhtml-код не отображает атрибут name в теге html формы.

Может ли кто-нибудь подсказать мне, как его исправить.

Ответы [ 2 ]

0 голосов
/ 18 февраля 2013

Я пытаюсь установить фокус для ввода текста в поле формы.Без указания атрибута name фокус OnLoad НЕ работает.Если «имя» устарело, должен быть другой способ поддержки этого фокуса ().Простой пример:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
       <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
       <title>Test</title>
    </head>
    <body OnLoad="document.InputForm.CMD.focus();">
       <div><b>Focus Test</b></div>
       <form ID="InputForm" method="post" action="">
           <input type="text" name="CMD" id="CMD" value="" size="50" />
           <input type="submit" name="OK" id="OK" value="OK" />
       </form>
</body>
</html>
0 голосов
/ 13 июля 2011

Атрибут «name» разрешен в HTML4, но в XHTML1.0 устарел.Спецификация HTML не допускает наличие атрибута «name» для форм. Проверьте здесь и здесь .

Zend Framework просто следует правилам.

Но зачем вам имя в любом случае?Почти все можно сделать с помощью класса и идентификатора.

Но если вам это действительно нужно, попробуйте сначала установить идентификатор, а затем имя, это может сработать.

...