您好,请您查看我的HTML和功能?必填字段不起作用。有什么想法吗?
<form action='contact_form.php' method='post' class="contactForm">
<div class="formSecWrap">
<input type="text" class="formField" title="Name" id="name" name="name" value="" required/>
<input type="text" class="formField" title="Email" name="email" id="email" value="" required/>
<input type="text" class="formField" title="Phone" name="phone" id="phone" value="" required />
<input type="text" class="formField" title="Date & Time" name="date" id="date" value="" required/>
</div>
<div class="formSecWrap formSecWrap2">
<textarea class="textarea formField" title="Message" name="message" id="message"></textarea>
</div>
<input class="button" id="submit-form" type="submit" name="submit" value="Send Message" />
<div id="success">
</div>
</form>
这是我的功能。我不确定为什么它不会把它作为必填字段。我自己没有创建这个表单但是试图以某种方式解决它。 谢谢
(function($){
$(document).ready(function() {
$('#submit-form').click(function(e){
e.preventDefault();
var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
var name = $('#name').val(),
email = $('#email').val(),
phone = $('#phone').val(),
date = $('#date').val(),
message = $('#message').val(),
data_html,
success = $('#success');
if(name == "")
$('#name').val('Please enter your name.');
if(phone == "")
$('#phone').val('Please enter your phone number.');
if(date == "")
$('#date').val('Please enter a date and time.');
if(email == ""){
$('#email').val('Your email is required.');
}else if(reg.test(email) == false){
$('#email').val('Invalid Email Address.');
}
if(message == "")
$('#message').val('Message is required.');
if(message != "" && name != "" && reg.test(email) != false) {
data_html = "name=" + name + "&email="+ email + "&message=" + message + "&phone="+ phone + "&date="+ date;
//alert(data_html);
$.ajax({
type: 'POST',
url: '../contact_form.php',
data: data_html,
success: function(msg){
if (msg == 'sent'){
success.html('<div class="alert alert-success">Message <strong>successfully</strong> sent!</div>') ;
$('#name').val('');
$('#phone').val('');
$('#email').val('');
$('#date').val('');
$('#message').val('');
}else{
success.html('<div class="alert alert-error">Message <strong>not</strong> sent! Please Try Again!</div>') ;
}
}
});
}
return false;
});
});
});
答案 0 :(得分:0)
尝试将参数传递给您匿名函数
(function($){
//all that code
})(jQuery);
答案 1 :(得分:0)
您可以尝试执行匿名函数,例如:
(function($){
//Your code
}.call(this));
如果问题无法解决,请创建小提琴
答案 2 :(得分:0)
应该调用匿名函数执行:
(function($){
//your code
})(jQuery);
用于在函数结束后立即调用匿名函数use(),并传递jQuery参数。
答案 3 :(得分:0)
从javascript中删除第一行和最后一行。
(function($){
和
});
它将代码包装到一个未调用的匿名函数中,因此您不会将click
事件绑定到提交按钮。
答案 4 :(得分:0)
它在firefox和chrome中都运行良好.. 如果不起作用,你可以查看