gpt4 book ai didi

javascript - 为什么我的 javascript 没有运行/邮件没有发送?

转载 作者:行者123 更新时间:2023-11-30 17:57:15 25 4
gpt4 key购买 nike

我对这一切几乎是个新手,所以尽量让我的代码尽可能简单。我有一个表单,一旦提交就会给我发送一封电子邮件,尽管我希望用户在提交之前必须填写所有字段,因此我有以下脚本

<script type='text/javascript'>
$('#mailform').submit(function() {
if (('#emailName' || '#emailEmail' || '#emailSubject').val() == "") {
alert('Please fill out all fields before clicking submit');
return false;
}
else {
alert('Your Email has been sent');
}
});
</script>

这是我的HTML

<form id="mailform" method="" action="http://www.mysiteaddress.co.uk/sendmail.php">
Your Name: <input id="emailName" name="yourName" type="text" /><br />
Your Email: <input id="emailEmail" name="yourEmail" type="text" /><br />
Subject: <input id="emailSubject" name="subject" type="text" /><br />
Message:<br />
<textarea name="message" rows="15" cols="40"></textarea><br />
<input type="submit" />
</form>

然而,当我点击提交时,表单完全忽略了 javascript 并运行了 php。为什么我的 javascript 没有先运行?

验证现在正在运行,但是现在当它运行我的 php 时,它不会向我发送表单,而是直接跳转到我的 else 语句的标题部分

if ( preg_match( "/[\r\n]/", $name ) || preg_match( "/[\r\n]/", $email ) ) {

header ( "Location: http://www.mysite.co.uk/contactme" );

}
else {
mail( "me@mysite.co.uk", "$name <$subject>",
$message, "From: $name <$email>" );
header ( "Location: http://www.mysite.co.uk/contactme" );
}

?>

最佳答案

if 语句中的选择器有问题。

TypeError: 'undefined' 不是一个函数
(评估'('#emailName' || '#emailEmail' || '#emailSubject').val()')

试试这个:

if ($('#emailName').val()==""
|| $('#emailEmail').val()==""
|| $('#emailSubject').val() == ""

http://jsfiddle.net/rPDnQ/

关于javascript - 为什么我的 javascript 没有运行/邮件没有发送?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17871037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com