Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 联系人表单代码自定义_Javascript_Jquery_Html - Fatal编程技术网

Javascript 联系人表单代码自定义

Javascript 联系人表单代码自定义,javascript,jquery,html,Javascript,Jquery,Html,您好–我已经在我的网站上实现了一个基于此地址的图图的联系表单 它工作正常,唯一的问题是我想在表单中添加一个字段“name” 因此,我在表单的html代码中添加了这行代码: <input id="name" class="txt" type="name" name="name" placeholder="name"/><br /> 修改后的表格代码: <form id="contact" action="#" method="post" name="contac

您好–我已经在我的网站上实现了一个基于此地址的图图的联系表单 它工作正常,唯一的问题是我想在表单中添加一个字段“name”

因此,我在表单的html代码中添加了这行代码:

<input id="name" class="txt" type="name" name="name" placeholder="name"/><br />

修改后的表格代码:

<form id="contact" action="#" method="post" name="contact">
<label for="name">Your Name</label>
<input id="name" class="txt" type="name" name="name" placeholder="name"/><br />
<label for="email">Your E-mail</label>
<input id="email" class="txt" type="email" name="email" placeholder="e-mail address"/>
<br />
<textarea id="msg" class="txtarea" name="msg" placeholder="Type your message here..."></textarea>
<button id="send">Send E-mail</button>
</form>

你的名字

你的电子邮件
发送电子邮件
我还将此添加到send mail php文件中:

$msg .= "<p><strong>From:</strong> ".$username."</p>\r\n";
?php
$sendto   = "myemail@gmail.com";
$usermail = $_POST['email'];
$content  = nl2br($_POST['msg']);

$subject  = "New Message frm";
$headers  = "From: " . strip_tags($usermail) . "\r\n";
$headers .= "Reply-To: ". strip_tags($usermail) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";

$msg  = "<html><body style='font-family:Arial,sans-serif;'>";
$msg .= "<h2 style='font-weight:bold;border-bottom:1px dotted #ccc;'>New message</h2>\r\n";
$msg .= "<p><strong>From:</strong> ".$username."</p>\r\n";
$msg .= "<p><strong>E-mail:</strong> ".$usermail."</p>\r\n";
$msg .= "<p><strong>Message:</strong> ".$content."</p>\r\n";
$msg .= "</body></html>";


if(@mail($sendto, $subject, $msg, $headers)) {
        echo "true";
} else {
        echo "false";
}

?>
$msg.=“发件人:”$username.

\r\n”;
send mail php文件的完整代码:

$msg .= "<p><strong>From:</strong> ".$username."</p>\r\n";
?php
$sendto   = "myemail@gmail.com";
$usermail = $_POST['email'];
$content  = nl2br($_POST['msg']);

$subject  = "New Message frm";
$headers  = "From: " . strip_tags($usermail) . "\r\n";
$headers .= "Reply-To: ". strip_tags($usermail) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";

$msg  = "<html><body style='font-family:Arial,sans-serif;'>";
$msg .= "<h2 style='font-weight:bold;border-bottom:1px dotted #ccc;'>New message</h2>\r\n";
$msg .= "<p><strong>From:</strong> ".$username."</p>\r\n";
$msg .= "<p><strong>E-mail:</strong> ".$usermail."</p>\r\n";
$msg .= "<p><strong>Message:</strong> ".$content."</p>\r\n";
$msg .= "</body></html>";


if(@mail($sendto, $subject, $msg, $headers)) {
        echo "true";
} else {
        echo "false";
}

?>
?php
$sendto=”myemail@gmail.com";
$usermail=$_POST['email'];
$content=nl2br($_POST['msg']);
$subject=“新消息frm”;
$headers=“From:”。剥离标签($usermail)。“\r\n”;
$headers.=“回复:”。剥离标签($usermail)。“\r\n”;
$headers.=“MIME版本:1.0\r\n”;
$headers.=“内容类型:text/html;字符集=utf-8\r\n”;
$msg=”“;
$msg.=“新邮件\r\n”;
$msg.=“发件人:“$username.”

\r\n”; $msg.=“电子邮件:”$usermail.

\r\n”; $msg.=“消息:”$content.“

\r\n”; $msg.=”; if(@mail($sendto,$subject,$msg,$headers)){ 呼应“真”; }否则{ 呼应“假”; } ?>
最后一部分:联系人表单的javascript代码。这就是我想我需要添加对我添加的新字段“name”的引用的地方。但不知道在哪里?(并使该字段成为强制性字段)。非常感谢你的帮助。非常感谢

// JavaScript Document
function validateEmail(email) {
                var reg = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
                return reg.test(email);
        }

        $(document).ready(function() {
                $(".modalbox").fancybox();
                $("#contact").submit(function() { return false; });


                $("#send").on("click", function(){
                        var emailval  = $("#email").val();
                        var msgval    = $("#msg").val();
                        var msglen    = msgval.length;
                        var mailvalid = validateEmail(emailval);

                        if(mailvalid == false) {
                                $("#email").addClass("error");
                        }
                        else if(mailvalid == true){
                                $("#email").removeClass("error");
                        }

                        if(msglen < 4) {
                                $("#msg").addClass("error");
                        }
                        else if(msglen >= 4){
                                $("#msg").removeClass("error");
                        }

                        if(mailvalid == true && msglen >= 4) {
                                // if both validate we attempt to send the e-mail
                                // first we hide the submit btn so the user doesnt click twice
                                $("#send").replaceWith("<em>sending...</em>");

                                $.ajax({
                                        type: 'POST',
                                        url: 'sendmessage.php',
                                        data: $("#contact").serialize(),
                                        success: function(data) {
                                                if(data == "true") {
                                                        $("#contact").fadeOut("fast", function(){
                                                                $(this).before("<p><strong>Success! Your message has been sent, thank you.</strong></p>");
                                                                setTimeout("$.fancybox.close()", 1000);
                                                        });
                                                }
                                        }
                                });
                        }
                });
        });
//JavaScript文档
功能验证电子邮件(电子邮件){
变量reg=/^([^()[\]\\,;:\s@\“]+(\.[^()[\]\,;:\s@\“]+*)(\'+\”)(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[1,3}.];
返回注册测试(电子邮件);
}
$(文档).ready(函数(){
$(“.modalbox”).fancybox();
$(“#contact”).submit(函数(){return false;});
$(“#发送”)。在(“单击”,函数(){
var emailval=$(“#email”).val();
var msgval=$(“#msg”).val();
var msglen=msgval.length;
var mailvalid=validateEmail(emailval);
if(mailvalid==false){
$(“#email”).addClass(“错误”);
}
else if(mailvalid==true){
$(“#email”).removeClass(“错误”);
}
如果(msglen<4){
$(“#msg”).addClass(“错误”);
}
否则如果(msglen>=4){
$(“#msg”).removeClass(“错误”);
}
如果(mailvalid==true&&msglen>=4){
//如果两者都有效,我们将尝试发送电子邮件
//首先,我们隐藏提交btn,这样用户就不会点击两次
$(“#发送”)。替换为(“发送…”);
$.ajax({
键入:“POST”,
url:'sendmessage.php',
数据:$(“#联系人”).serialize(),
成功:功能(数据){
如果(数据==“真”){
$(“#联系人”).fadeOut(“快速”,函数(){
$(此)。之前(“成功!您的邮件已发送,谢谢。

”; setTimeout($.fancybox.close()”,1000); }); } } }); } }); });
用以下代码替换以下代码:

var emailval  = $("#email").val();
var msgval    = $("#msg").val();
var msglen    = msgval.length;
var mailvalid = validateEmail(emailval);
//Get our name
var nameval = $("#name").val();
//Get our name length
var namelen = nameval.length;
然后在

                if(msglen < 4) {
                        $("#msg").addClass("error");
                }
                else if(msglen >= 4){
                        $("#msg").removeClass("error");
                }
加:


尝试一下,我的朋友:)

与消息的方式相同?我想是这样,但不确定这是什么部分…请参见
“click”
处理程序函数中访问消息的部分?它是基于长度进行验证的。您可以对名称执行相同的操作—因此,每当出现
msglen
时,您都希望对名称执行类似的操作。(至少这是一种方法,你可以对其进行建模。)我发布了验证名称字段的答案,如果你发送电子邮件,名称看起来是否正常?代码的行为类似于
nameval
是一个长度,但它不是;这就是价值。谢谢你的回答,彼得。我试过了,但不幸的是没有成功。这里是你的代码UpdateGlad要听的网站的url,如果你对此有更多问题,请留下评论:)
$username = $_POST['name'];