表单自动填充字段填充不正确

3

我为正在开发的网站创建了一个表单,如下所示:

<div class="container contacts__container--02">
    <? echo $this->Form->create('Email',array('class'=>'contact-form form','url'=>'/sendemail'));?>
    <form class="contact-form form contacts__form--02">
      <div class="contacts__form__inputs_box--02">
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-4 contact_item">
            <input
              type="text"
              placeholder="Your name"
              value=""
              name="data[Email][fullname]"
              class="input input--cloud-border input--white"
              minlength="3"
              required
            >
          </div>
          <div class="col-md-4 contact_item">
            <input
              type="text"
              required placeholder="Your business"
              value="" name="data[Email][business]"
              class="input input--cloud-border input--white"
            >
          </div>
        </div>
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-4 contact_item">
            <input
              type="email"
              required placeholder="Your email"
              value=""
              name="data[Email][email]"
              class="input input--cloud-border input--white"
              required
            >
          </div>
          <div class="col-md-4 contact_item">
            <input
              type="text"
              placeholder="Your phone"
              value=""
              name="data[Email][phone]"
              class="input input--cloud-border input--white"
            >
          </div>
        </div>
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-4 contact_item">
            <input
              type="email"
              required placeholder="Your website"
              value="" name="data[Email][website]"
              class="input input--cloud-border input--white"
            >
          </div>
          <div class="col-md-4 contact_item">
            <input
            type="text"
            placeholder="How did you hear about us?"
            value="" name="data[Email][referer]"
            class="input input--cloud-border input--white"
          >
          </div>
        </div>
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-8 contact_item">
            <textarea
              required placeholder="Your message"
              value="" name="data[Email][message]"
              class="contacts__form_textarea--02 input input--cloud-border input--white"
            ></textarea>
          </div>
        </div>
        <div class="row submit_row">
          <div class="col-md-2">
          </div>
          <div class="col-md-8 submit_button">
            <div class="g-recaptcha" data-sitekey="<?php echo $siteKey ?>"></div>
          </div>
        </div>
        <div class="row submit_row">
          <div class="col-md-2">
          </div>
          <div class="col-md-8 contact_item">
            <a id="sendForm" class="contacts__form_button--02 button button--yellow button--small-radius">send</a>
          </div>
        </div>
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-8 contact_item">
            <div id="response">
            </div>
          </div>
        </div>
      </form>
      <? echo $this->Form->end(); ?>
    </div>
 </div>

但是不知道为什么当我填写表单时,除了电话号码之外的所有字段都被我的电子邮件地址填充:

enter image description here

我该如何设置自动完成应该使用哪个字段?


1
你是否正在使用Chrome浏览器的表单保存功能?有时它在填写字段方面表现得很糟糕,这取决于你所称呼的字段名称是否为标准字段名称。由于你似乎将所有字段名称都命名为“[email]”,因此它会将它们填充为电子邮件,因为它必须对输入名称进行某种模式匹配以查找电子邮件。一个问题是,为什么你将数组命名为电子邮件,而不是像详细信息或其他更通用的名称? - Pete
你想禁用自动完成吗? - Neinrappeur Zaki
1个回答

0

它将“电子邮件”解释为字段名称而不是表单数组。现在更改为“ContactForm”,现在可以正常工作:

<? echo $this->Form->create('ContactForm',array('class'=>'contact-form form','url'=>'/sendemail'));?>
    <form class="contact-form form contacts__form--02">
      <div class="contacts__form__inputs_box--02">
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-4 contact_item">
            <input
              type="text"
              placeholder="Your name"
              value=""
              name="data[ContactForm][fullname]"
              class="input input--cloud-border input--white"
              minlength="3"
              required
            >
          </div>
          <div class="col-md-4 contact_item">
            <input type="text" required placeholder="Your business" value="" name="data[ContactForm][business]" class="input input--cloud-border input--white">
          </div>
        </div>
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-4 contact_item">
            <input type="email" required placeholder="Your email" value="" name="data[ContactForm][email]" class="input input--cloud-border input--white">
          </div>
          <div class="col-md-4 contact_item">
            <input type="text" placeholder="Your phone" value="" name="data[ContactForm][phone]" class="input input--cloud-border input--white">
          </div>
        </div>
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-8 contact_item">
            <textarea required placeholder="Your message" value="" name="data[ContactForm][message]" class="contacts__form_textarea--02 input input--cloud-border input--white"></textarea>
          </div>
        </div>
        <div class="row submit_row">
          <div class="col-md-2">
          </div>
          <div class="col-md-8 submit_button">
            <div class="g-recaptcha" data-sitekey="<?php echo $siteKey ?>"></div>
          </div>
        </div>
        <div class="row submit_row">
          <div class="col-md-2">
          </div>
          <div class="col-md-8 contact_item">
            <a id="sendForm" class="contacts__form_button--02 button button--yellow button--small-radius">send</a>
          </div>
        </div>
        <div class="row">
          <div class="col-md-2">
          </div>
          <div class="col-md-8 contact_item">
            <div id="response">
            </div>
          </div>
        </div>
      </form>
      <? echo $this->Form->end(); ?>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接