我已经进行了验证,并且消息出现在提交时,但是页面似乎没有处理表单/刷新。否则我想我可以走了!
这是我的 html:
<form parsley-validate id="frmContact" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<p>
<label for="yourName">name</label>
<input id="yourName" parsley-required="true" parsley-mincheck="2" parsley-focus="first" type="text" name="name" class="required textArea" placeholder="Please enter your full name"/>
</p>
<p>
<label for="email" >Email</label>
<input id="email" data-trigger="change" parsley-required="true" parsley-type="email" type="email" name="email" class="textArea" placeholder="Please enter your email address"/>
</p>
<p>
<label for="comments">Comments</label>
<textarea id="comments" data-trigger="change" required data-required="true" name="comments" class="textArea" title="Message field!"/>
</textarea>
</p>
<p>
<input type="submit" class="submit myButtons submitButton specificLink button button-block button-rounded button-large" name="submit" value="Submit" placeholder="">
</p>
<div id="results" class="results" style="text-align:center;">
<span>
<p class="success">Your message was sent succssfully!<br> I will be in touch as soon as I can.
</p>
</span>
</div>
</form>
js/jquery:
var dd= $.noConflict();
dd(function() {
dd(":text:first").focus();
dd(".success").hide();
dd('#frmContact').submit(function(e) {
e.preventDefault();
if ( dd(this).parsley('validate') ) {
dd.post("index.php", dd(".success").show());
}
});
});
最佳答案
尝试用 true
和 false
替换 dd(this).parsley('validate')
以消除 parsley.js
来自问题。
然后您可能会注意到 e.preventDefault();
无法按您希望的方式工作。请参阅this answer了解更多详情。
试试这个而不是你的代码:
dd(function() {
dd(":text:first").focus();
dd(".success").hide();
dd('#frmContact').submit(function(e) {
if ( dd(this).parsley('validate')) {
dd.post("index.php", dd(".success").show());
}
return false;
});
});
关于javascript - 如何使用 parsley.js 提交表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20804534/