没有ID主要联系表格,表格将无法验证

时间:2016-05-07 03:26:43

标签: javascript html forms

我有一种奇怪的问题。我有一个表格,是邮件黑猩猩的订阅表格。如果我没有验证,表格就完美无缺(当它说“请填写此内容”或“请在电子邮件中加入@”时)

如果我有一个ID <form name="mc-embedded-subscribe-form" action="//leilamasson.us7.list-manage.com/subscribe/post?u=0178d0b7b81eec71fd9e2ee9b&amp;id=63fbfa0062" method="post" id="mc-embedded-subscribe-form main-contact-form" target="_blank"> <div class="form-group"> <input type="text" name="FNAME" class="form-control" required="required" placeholder="Name"> </div> <div class="form-group"> <input type="text" name="LNAME" class="form-control" required="required" placeholder="Last Name"> </div> <div class="form-group"> <input type="email" name="EMAIL" class="form-control" required="required" placeholder="Email Adress"> </div> <div id="form-group"> <div class="response" id="mce-error-response" style="display:none"></div> <div class="response" id="mce-success-response" style="display:none"></div> </div> <div class="form-group"> <button type="submit" name="subscribe" class="btn btn-primary pull-right">Subscribe</button> </div> <div style="position: absolute; left: -5000px;" aria-hidden="true"><input type="text" name="b_0178d0b7b81eec71fd9e2ee9b_63fbfa0062" tabindex="-1" value=""> </div> </form> ,它也可以工作,然而,mailchimp成功/失败回复将在新标签页中打开。问题是我不希望它转到另一个标签,我希望它出现在特别标记的div中。哪个会工作如果我没有主要的联系表单ID但是我没有我想要的验证。

以下是表格:

<form action="//leilamasson.us7.list-manage.com/subscribe/post?u=0178d0b7b81eec71fd9e2ee9b&amp;id=63fbfa0062"
      method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form">

    <div class="form-group">
        <input type="email" name="EMAIL" class="form-control" required="required"
               placeholder="Email Adress">
    </div>
    <div class="form-group">
        <button type="submit" name="subscribe" class="btn btn-primary pull-right">Subscribe</button>
    </div>
    <div id="form-group">
        <div class="response" id="mce-error-response" style="display:none"></div>
        <div class="response" id="mce-success-response" style="display:none"></div>
    </div>

</form>

这是我想要的形式的一个例子,没有验证:

<?php

function form(){
 echo "<form method='post' action=" . $_SERVER['PHP_SELF'] . ">";
    echo "<input type='text' name='user' /><br/>";
    echo "<input type='submit' value='submit' />";

}

form();

$userinput = $_POST['user'];

$random = rand (  1 , 4);

echo "input is " . $userinput . "  " . "random number is " . $random;
?> 

注意:底部表单没有ID主联系表单,它不允许进行验证,顶部表单有ID主联系表单,强制它在新选项卡中打开。

问题可以在社交部分MariaDB下看到。

1 个答案:

答案 0 :(得分:0)

你不能在id中有空格 - 这将有效地分割部分并导致问题:

@Provider
@Consumes({MediaType.APPLICATION_JSON})
public class CarInfoReader implements MessageBodyReader<CarInfo> {
    //. . .

    @Override
    public CarInfo readFrom(Class<CarInfo> type, Type genericType,
            Annotation[] annotations, MediaType mediaType,
            MultivaluedMap<String, String> httpHeaders, InputStream entityStream)
            throws IOException, WebApplicationException {
        ObjectMapper objectMapper = new ObjectMapper();  
        objectMapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true);  
        CarInfo info = objectMapper.readValue(entityStream, CarInfo.class);
        return info;
    }

}

应该类似于(添加下划线):

...id="mc-embedded-subscribe-form main-contact-form"...

此外,您确实应该为输入设置标签for =&#34; xyz&#34; xyz是输入的id。这允许屏幕阅读器将标签绑定到特定输入。

请注意,错误的div具有表单组的ID - 当所有其他人都有表单组的类时:

...id="mc-embedded-subscribe-form_main-contact-form"...

应该是

...<div id="form-group">
     <div class="response"...

另外,作为一个旁边 - 而不是将div一直隐藏在屏幕上并带有文本输入 - 为什么没有隐藏的输入:

...<div class="form-group">
     <div class="response"...