我使用javascript编写html页面,我的代码在下面给出
<input type="text" id="name" name="name" value="" size="40" class="form-control"placeholder="Name*" />
<input type="text" id="email" name="email" value="" size="40" class="form-control" placeholder="E-mail*" />
<input type="text" id="phone" name="email-414" value="" size="40" class="form-control" placeholder="Phone*" />
<textarea id="message" name="textarea" cols="40" rows="10" class="form-control" placeholder="Message"></textarea>
<input type="submit" value="Send Enquiry" id="submit_mail_cont" class="btn btn-success" />
和javascript(使用jQuery)
<script type="text/javascript">
$("#submit_mail_cont").click(function(){alert('Clicked);var name = $("#name").val();var email = $("#email").val();var phone = $("#phone").val();
var message = $("#message").val();
console.log(name);
console.log(email);
console.log(phone);
console.log(message);
$("body").css('cursor', 'wait');
if (name == "" || email == "" || phone == "" || message == "") {
alert("Fill All fields");
}else{
$.ajax({
url: 'http/url/to/my/page.php',
type: 'POST',
dataType: 'json',
data: {"name": name,"email": email,"phone": phone,"message": message},
})
.done(function() {
alert("Mail sent");
})
.fail(function() {
alert("Fail");
})
.always(function(){
$("body").css('cursor', 'auto');
});
};
});
</script>
上面的代码在我的本地系统中工作正常,但是我将它上传到服务器端它没有说话。 我在调试代码时遇到此错误未捕获的SyntaxError:js开始标记上的无效或意外的令牌java脚本
我没有找到错误和解决方案。
答案 0 :(得分:4)
从;
的大括号else
};
$("#submit_mail_cont").click(function()
{
.....
if (name == "" || email == "" || phone == "" || message == "") {
.....
}
else
{
.....
// }; here you have semicolon
} // remove that semicolon
});
评论中@Reshma建议的其他错误是:
你的警告错过了'叛逆者 - @Reshma
答案 1 :(得分:2)
您错过了alert('Clicked);
修复它,它将按预期工作。
$("#submit_mail_cont").click(function() {
alert('Clicked');
var name = $("#name").val();
var email = $("#email").val();
var phone = $("#phone").val();
var message = $("#message").val();
console.log(name);
console.log(email);
console.log(phone);
console.log(message);
$("body").css('cursor', 'wait');
if (name == "" || email == "" || phone == "" || message == "") {
alert("Fill All fields");
} else {
$.ajax({
url: 'http/url/to/my/page.php',
type: 'POST',
dataType: 'json',
data: {
"name": name,
"email": email,
"phone": phone,
"message": message
},
})
.done(function() {
alert("Mail sent");
})
.fail(function() {
alert("Fail");
})
.always(function() {
$("body").css('cursor', 'auto');
});
};
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="name" name="name" value="" size="40" class="form-control" placeholder="Name*" />
<input type="text" id="email" name="email" value="" size="40" class="form-control" placeholder="E-mail*" />
<input type="text" id="phone" name="email-414" value="" size="40" class="form-control" placeholder="Phone*" />
<textarea id="message" name="textarea" cols="40" rows="10" class="form-control" placeholder="Message"></textarea>
<input type="submit" value="Send Enquiry" id="submit_mail_cont" class="btn btn-success" />
&#13;